Go Back   FlashFXP Forums > >

Project: FlashFXP Bug Reports Ticket Tools
ID: 232 Category: FlashFXP Bug
Title: Sites disappear from connection menu over time Status: Closed
Severity: Minor Version: 3.7.3 BETA

Junior Member
jcony
08-28-2008, 06:24 PM
Sites disappear from connection menu over time

I have used a variety of different versions of FlashFXP on Windows SP1 to SP3 and over the years this issue has become increasingly annoying. I generally have many (5-10)instances of FlashFXP open at any given time during my Windows XP (currently SP3) session (only user logged in at all times). Over time, generally two weeks or more, FlashFXP ends up displaying only a partial list of my sites from my 'site manager' on the 'connection menu' (when you hit the lightning boldt, at least I think thats what it is called).

I have 150-200 sites in the root of the site manager. Now, after 2 week and 4 days, there are about 50-75 sites listed all of the sudden (yesterday all sites were listed OK). Even after closing all instances of FlashFXP (even a hidden instance via the Windows task manager->proccesses tab) and relaunching FlashFXP, the sites do not all get listed. The only way I have found to duplicate this issue is time. Generally, more instances will yeild more issues faster, but not always. The only way I have found to solve the problem is by rebooting Windows (which is a pain, and the number one reason I ever need to reboot Windows).

I would like to know what information I can provide to help resolve this issue. If I contune to use FlashFXP for a while after the connection menu items start to disappear, many times it will become less and less functional to the point where I can't use any of the menus and eventually sometimes it ends up crashing FlashFXP. I am not sure if this bug report is related to this issue, but it is the last one that I have...

date/time : 2008-08-28 17:57
computer name : asdf
user name : jcony
remote session : FALSE
IsAdmin : TRUE
operating system : Windows XP Service Pack 3 build 2600
system language : English
system up time : 18 days 7 hours
program up time : 4 days 14 hours
processors : 4x Intel(R) Core(TM)2 Quad CPU Q9300 @ 2.50GHz
physical memory : 2287/3326 MB (free/total)
free disk space : (C 65.98 GB
display mode : 1680x1050, 32 bit
monitors : 1, 1680x1050
process id : $1a78
allocated memory : 21.48 MB
executable : FlashFXP.exe
executable hash : 815BB6F9590A41CA38AB86E04DBEBF93
executable size : 3904184
exec. date/time : 2008-07-14 13:34
version : 3.7.2.1266
madExcept version : 2.7k
exception class : EMenuError
exception message : Out of system resources.

main thread ($1184):
004831de FlashFXP.exe Menus 826 +7 TMenuItem.GetHandle
00482d28 FlashFXP.exe Menus 705 +4 TMenuItem.AppendTo
00482f6e FlashFXP.exe Menus 749 +1 AddIn
004827cb FlashFXP.exe Menus 508 +11 Iterate
00482894 FlashFXP.exe Menus 534 +18 IterateMenus
00482fae FlashFXP.exe Menus 755 +2 TMenuItem.PopulateMenu
004830ba FlashFXP.exe Menus 793 +11 TMenuItem.RebuildHandle
00484259 FlashFXP.exe Menus 1418 +1 TMenuItem.SubItemChanged
00484233 FlashFXP.exe Menus 1413 +4 TMenuItem.MenuChanged
0048406b FlashFXP.exe Menus 1354 +12 TMenuItem.Insert
00484187 FlashFXP.exe Menus 1394 +1 TMenuItem.Add
0068e73f FlashFXP.exe FrmMain1 11074 +105 TFrmMain.BuildMenuList
006ac366 FlashFXP.exe FrmMain1 20990 +40 TFrmMain.PopSitePopup
00485b85 FlashFXP.exe Menus 2496 +1 TPopupMenu.DoPopup
00485c74 FlashFXP.exe Menus 2566 +8 TPopupMenu.Popup
004d167a FlashFXP.exe ComCtrls 16684 +46 TToolBar.CheckMenuDropdown
004ce008 FlashFXP.exe ComCtrls 14699 +1 TToolButton.CheckMenuDropdown
004d0a91 FlashFXP.exe ComCtrls 16277 +11 TToolBar.CNNotify
00478355 FlashFXP.exe Controls 4233 +37 TControl.WndProc
0047ab8a FlashFXP.exe Controls 5698 +42 TWinControl.WndProc
004d0df1 FlashFXP.exe ComCtrls 16394 +73 TToolBar.WndProc
00478184 FlashFXP.exe Controls 4158 +5 TControl.Perform
0047acfb FlashFXP.exe Controls 5741 +6 DoControlMsg
0047b221 FlashFXP.exe Controls 5922 +1 TWinControl.WMNotify
00478355 FlashFXP.exe Controls 4233 +37 TControl.WndProc
0047ab8a FlashFXP.exe Controls 5698 +42 TWinControl.WndProc
004d0df1 FlashFXP.exe ComCtrls 16394 +73 TToolBar.WndProc
0047a814 FlashFXP.exe Controls 5571 +3 TWinControl.MainWndProc
004685a0 FlashFXP.exe Forms 1484 +8 StdWndProc
7e42f406 user32.dll SendMessageA
004d0bb3 FlashFXP.exe ComCtrls 16318 +9 SendDropdownMsg
004d0d84 FlashFXP.exe ComCtrls 16375 +54 TToolBar.WndProc
0047a814 FlashFXP.exe Controls 5571 +3 TWinControl.MainWndProc
004685a0 FlashFXP.exe Forms 1484 +8 StdWndProc
7e4196c2 user32.dll DispatchMessageA
00471117 FlashFXP.exe Forms 6900 +34 TApplication.ProcessMessage
0047114e FlashFXP.exe Forms 6938 +1 TApplication.HandleMessage
0047136e FlashFXP.exe Forms 7028 +21 TApplication.Run
006d479d FlashFXP.exe FlashFXP 680 +509 initialization

thread $1d5c (TChangeHandlerThread):
7c90e4f4 ntdll.dll KiFastSystemCallRet
7c90df2a ntdll.dll NtWaitForMultipleObjects
7c80956e kernel32.dll WaitForMultipleObjectsEx
7c80a100 kernel32.dll WaitForMultipleObjects
005ebb8d FlashFXP.exe UPTShellControls 4034 +11 TChangeHandlerThread.Execute
0044cf96 FlashFXP.exe madExcept HookedTThreadExecute
0041b1e0 FlashFXP.exe Classes 6905 +1 ThreadProc
00403fbc FlashFXP.exe System ThreadWrapper
0044cec9 FlashFXP.exe madExcept CallThreadProc
0044cf0b FlashFXP.exe madExcept ThreadExceptFrame
>> created by main thread ($1184) at:
005eb853 FlashFXP.exe UPTShellControls 3930 +2 TChangeHandlerThread.Create

thread $1fe4:
7c90e4f4 ntdll.dll KiFastSystemCallRet
7c90df3a ntdll.dll NtWaitForSingleObject
7c8025d5 kernel32.dll WaitForSingleObjectEx
7c80253d kernel32.dll WaitForSingleObject
0044cec9 FlashFXP.exe madExcept CallThreadProc
0044cf0b FlashFXP.exe madExcept ThreadExceptFrame
>> created by main thread ($1184) at:
71abd374 WS2_32.dll

thread $198c (TDirSizeWorker):
7c90e4f4 ntdll.dll KiFastSystemCallRet
7c90df2a ntdll.dll NtWaitForMultipleObjects
7c80956e kernel32.dll WaitForMultipleObjectsEx
7c80a100 kernel32.dll WaitForMultipleObjects
0060ec5f FlashFXP.exe DirSizeThd 158 +27 TDirSizeWorker.Execute
0044cf96 FlashFXP.exe madExcept HookedTThreadExecute
0041b1e0 FlashFXP.exe Classes 6905 +1 ThreadProc
00403fbc FlashFXP.exe System ThreadWrapper
0044cec9 FlashFXP.exe madExcept CallThreadProc
0044cf0b FlashFXP.exe madExcept ThreadExceptFrame
>> created by main thread ($1184) at:
0060e845 FlashFXP.exe DirSizeThd 46 +8 TDirSizeWorker.Create

thread $1ebc:
7c90e4f4 ntdll.dll KiFastSystemCallRet
7c90da8a ntdll.dll NtReplyWaitReceivePortEx
0044cec9 FlashFXP.exe madExcept CallThreadProc
0044cf0b FlashFXP.exe madExcept ThreadExceptFrame
>> created by thread $13bc at:
77e7df36 RPCRT4.dll

modules:
00400000 FlashFXP.exe 3.7.2.1266 C:\r\FlashFXP
012a0000 odbcint.dll 3.525.1132.0 C:\WINDOWS\system32
01790000 Normaliz.dll 6.0.5441.0 C:\WINDOWS\system32
01850000 xpsp2res.dll 5.1.2600.5512 C:\WINDOWS\system32
01e20000 ssleay32.dll 0.9.8.8 C:\r\FlashFXP
07160000 Audiodev.dll 5.2.5721.5145 C:\WINDOWS\system32
10000000 libeay32.dll 0.9.8.8 C:\r\FlashFXP
10930000 PortableDeviceApi.dll 5.2.5721.5145 C:\WINDOWS\system32
11c70000 WMASF.DLL 11.0.5721.5238 C:\WINDOWS\system32
15110000 WMVCore.DLL 11.0.5721.5145 C:\WINDOWS\system32
16000000 events.dll 3.1.9.0 C:\r\Trillian
16080000 mdnsNSP.dll 1.0.3.1 C:\Program Files\Bonjour
16210000 wpdshext.dll 5.2.5721.5145 C:\WINDOWS\system32
42ef0000 ieframe.dll 7.0.6000.16674 C:\WINDOWS\system32
4ec50000 gdiplus.dll 5.1.3102.5512 C:\WINDOWS\WinSxS\x86_Microsoft.Windows.GdiPlus_65 95b64144ccf1df_1.0.2600.5512_x-ww_dfb54e0c
593f0000 wiashext.dll 5.1.2600.5512 C:\WINDOWS\system32
5ad70000 UxTheme.dll 6.0.2900.5512 C:\WINDOWS\system32
5b860000 netapi32.dll 5.1.2600.5512 C:\WINDOWS\system32
662b0000 hnetcfg.dll 5.1.2600.5512 C:\WINDOWS\system32
68000000 rsaenh.dll 5.1.2600.5507 C:\WINDOWS\system32
71a50000 mswsock.dll 5.1.2600.5625 C:\WINDOWS\System32
71a90000 wshtcpip.dll 5.1.2600.5512 C:\WINDOWS\System32
71aa0000 WS2HELP.dll 5.1.2600.5512 C:\WINDOWS\system32
71ab0000 WS2_32.dll 5.1.2600.5512 C:\WINDOWS\system32
71ad0000 wsock32.dll 5.1.2600.5512 C:\WINDOWS\system32
71b20000 MPR.dll 5.1.2600.5512 C:\WINDOWS\system32
71bf0000 SAMLIB.dll 5.1.2600.5512 C:\WINDOWS\System32
71c10000 ntlanman.dll 5.1.2600.5512 C:\WINDOWS\System32
71c80000 NETRAP.dll 5.1.2600.5512 C:\WINDOWS\System32
71c90000 NETUI1.dll 5.1.2600.5512 C:\WINDOWS\System32
71cd0000 NETUI0.dll 5.1.2600.5512 C:\WINDOWS\System32
73000000 winspool.drv 5.1.2600.5512 C:\WINDOWS\system32
73ba0000 sti.dll 5.1.2600.5512 C:\WINDOWS\System32
73d70000 shgina.dll 6.0.2900.5512 C:\WINDOWS\System32
74320000 ODBC32.dll 3.525.1132.0 C:\WINDOWS\system32
74720000 MSCTF.dll 5.1.2600.5512 C:\WINDOWS\system32
74ae0000 CFGMGR32.dll 5.1.2600.5512 C:\WINDOWS\System32
755c0000 msctfime.ime 5.1.2600.5512 C:\WINDOWS\system32
75970000 MSGINA.dll 5.1.2600.5512 C:\WINDOWS\system32
75f60000 drprov.dll 5.1.2600.5512 C:\WINDOWS\System32
75f70000 davclnt.dll 5.1.2600.5512 C:\WINDOWS\System32
76360000 WINSTA.dll 5.1.2600.5512 C:\WINDOWS\system32
76390000 IMM32.DLL 5.1.2600.5512 C:\WINDOWS\system32
763b0000 comdlg32.dll 6.0.2900.5512 C:\WINDOWS\system32
76600000 CSCDLL.dll 5.1.2600.5512 C:\WINDOWS\System32
76980000 LINKINFO.dll 5.1.2600.5512 C:\WINDOWS\system32
76990000 ntshrui.dll 5.1.2600.5512 C:\WINDOWS\system32
769c0000 USERENV.dll 5.1.2600.5512 C:\WINDOWS\system32
76b20000 ATL.DLL 3.5.2284.1 C:\WINDOWS\system32
76b40000 winmm.dll 5.1.2600.5512 C:\WINDOWS\system32
76bf0000 PSAPI.DLL 5.1.2600.5512 C:\WINDOWS\system32
76c30000 WINTRUST.dll 5.131.2600.5512 C:\WINDOWS\system32
76c90000 IMAGEHLP.dll 5.1.2600.5512 C:\WINDOWS\system32
76d60000 Iphlpapi.dll 5.1.2600.5512 C:\WINDOWS\system32
76f20000 DNSAPI.dll 5.1.2600.5625 C:\WINDOWS\system32
76f60000 WLDAP32.dll 5.1.2600.5512 C:\WINDOWS\system32
76fb0000 winrnr.dll 5.1.2600.5512 C:\WINDOWS\System32
76fc0000 rasadhlp.dll 5.1.2600.5512 C:\WINDOWS\system32
76fd0000 CLBCATQ.DLL 2001.12.4414.700 C:\WINDOWS\system32
77050000 COMRes.dll 2001.12.4414.700 C:\WINDOWS\system32
77120000 oleaut32.dll 5.1.2600.5512 C:\WINDOWS\system32
773d0000 comctl32.dll 6.0.2900.5512 C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.5512_x-ww_35d4ce83
774e0000 ole32.dll 5.1.2600.5512 C:\WINDOWS\system32
77920000 SETUPAPI.dll 5.1.2600.5512 C:\WINDOWS\system32
77a20000 cscui.dll 5.1.2600.5512 C:\WINDOWS\System32
77a80000 crypt32.dll 5.131.2600.5512 C:\WINDOWS\system32
77b20000 MSASN1.dll 5.1.2600.5512 C:\WINDOWS\system32
77b40000 appHelp.dll 5.1.2600.5512 C:\WINDOWS\system32
77c00000 version.dll 5.1.2600.5512 C:\WINDOWS\system32
77c10000 msvcrt.dll 7.0.2600.5512 C:\WINDOWS\system32
77dd0000 advapi32.dll 5.1.2600.5512 C:\WINDOWS\system32
77e70000 RPCRT4.dll 5.1.2600.5512 C:\WINDOWS\system32
77f10000 GDI32.dll 5.1.2600.5512 C:\WINDOWS\system32
77f60000 SHLWAPI.dll 6.0.2900.5512 C:\WINDOWS\system32
77fe0000 Secur32.dll 5.1.2600.5512 C:\WINDOWS\system32
78000000 iertutil.dll 7.0.6000.16674 C:\WINDOWS\system32
78050000 WININET.dll 7.0.6000.16674 C:\WINDOWS\system32
78130000 urlmon.dll 7.0.6000.16674 C:\WINDOWS\system32
7c340000 MSVCR71.dll 7.10.3052.4 C:\r\Trillian
7c800000 kernel32.dll 5.1.2600.5512 C:\WINDOWS\system32
7c900000 ntdll.dll 5.1.2600.5512 C:\WINDOWS\system32
7c9c0000 shell32.dll 6.0.2900.5512 C:\WINDOWS\system32
7e410000 user32.dll 5.1.2600.5512 C:\WINDOWS\system32

disassembling:
[...]
00483196 jnz loc_4831ea
00483198 822 mov eax, [ebx+4]
0048319b mov edx, [$4820e8]
004831a1 call -$7fcfa ($4034ac) ; System.@IsClass
004831a6 test al, al
004831a8 jz loc_4831b4
004831aa 823 call -$7b8db ($4078d4) ; Windows.CreatePopupMenu
004831af mov [ebx+$28], eax
004831b2 jmp loc_4831bc
004831b4 825 call -$7b8ed ($4078cc) ; Windows.CreateMenu
004831b9 mov [ebx+$28], eax
004831bc 826 cmp dword ptr [ebx+$28], 0
004831c0 jnz loc_4831e3
004831c2 lea edx, [ebp-4]
004831c5 mov eax, [$6effa4]
004831ca call -$7d15f ($406070) ; System.LoadResString
004831cf mov ecx, [ebp-4]
004831d2 mov dl, 1
004831d4 mov eax, [$481888]
004831d9 call -$74ea6 ($40e338) ; SysUtils.Exception.Create
004831de > call -$7f757 ($403a8c) ; System.@RaiseExcept
004831e3 827 mov eax, ebx
004831e5 call -$272 ($482f78) ; Menus.TMenuItem.PopulateMenu
004831ea 829 mov ebx, [ebx+$28]
004831ed xor eax, eax
004831ef pop edx
004831f0 pop ecx
004831f1 pop ecx
004831f2 mov fs:[eax], edx
004831f5 push $48320a
004831fa lea eax, [ebp-4]
004831fd call -$7f1ea ($404018) ; System.@LStrClr
00483202 ret
00483203 jmp -$7f834 ($4039d4) ; System.@HandleFinally
00483208 jmp loc_4831fa
0048320a mov eax, ebx
0048320c 830 pop ebx
0048320d pop ecx
0048320e pop ebp
0048320f ret



And... Reguarding exception message : Out of system resources.
, what kind of resource is not available? I have an enormus amount of memory free.

TIA for shedding some light on this!
FlashFXP Developer
bigstar
08-29-2008, 12:07 AM
Re: Sites disappear from connection menu over time

Yes that bugreport appears to hit the nail right on the head. More than likely after a couple of days of uptime your exhausting all of your windows resources.

Basically this below explains it some

To maintain compatibility with 16-bit Windows programs (which still run on Windows XP thanks to the WOW layer), there cannot be more than 65536 window handles in the system, because any more than that would prevent 16-bit programs from being able to talk meaningfully about windows. (Once you create your 65537'th window, there will be two windows with the same 16-bit handle value, thanks to the pigeonhole principle.)

More info http://blogs.msdn.com/oldnewthing/ar...15/395866.aspx


FlashFXP dynamically creates its menu items to keep resource usage down, after about 15 seconds of not using the connect menu all site entries are freed from memory allowing other applications to allocate window handles.

There is an ini only setting to disable this feature if you want to try with it disabled

open flashfxp.ini in a text editor and under the [main] section add
DynamicMenu=0

Save the flashfxp.ini and start FlashFXP

Having this option disabled may limit the number of copies of FlashFXP your able to run since the menu is always in memory and the window handles are allocated but it should prevent the site list from ever being incomplete.

Also I'd recommend upgrading to the latest beta of FlashFXP.

Every couple builds I run FlashFXP through a memory leak detection tool to insure there's no resource/memory leaks. The last check found no leaks, however sometimes a leak can be overlooked if they don't occur during normal usage, my tests normally run 30min to an hour long.

You can take a look at FlashFXP resource usage using something like "Process Explorer", keep an eye on the User & GUI Objects, Running FlashFXP for 30min or 3 days these values should be somewhat constant, if you see a huge change then there might be a leak that was missed. This is unlikely but possible. Also using "Process Explorer" you can check the resource usage of other applications, some applications will allocate resources without freeing them resulting in a memory leak.

The debug versions of FlashFXP will actually warn of a leak should one be detected while FlashFXP is exiting. This warning will appear in the form of a popup message box.
Junior Member
jcony
09-12-2008, 08:44 PM
Re: Sites disappear from connection menu over time

Thanks for the insight, I was unaware of the window handle limits. That could explain why everything was running very fast and smooth and all the sudden I am out of system resources

At this point in my session I have about 20% of items showing in my FlashFXP connection menu. I reached the point where I had to close excel to regain functionality of other applications (such as using flashfxp menus).

I was unable to find a "GUI Object" tab for Proccess Explorer so I am guessing you ment GDI objects? According to Process Explorer I have...
User Objects: 5844
GDI Objects: 8857
Handles: 16893

I'm not sure which combination of these values takes away from the 65,536 handles available. But even if I add them all togather, I would be using less than half of my available handles.

For the record, using the v3.7.3 build 1275, the Flashfxp instances had about 150-200 user objects, 200-300 GDI objects, 250-350 handles. WindowsXP uptime: 2wks 1day 1hr.

Does the information provided null the possibility this is being caused by too many handles? Or am I presenting inaccurate data?
Junior Member
jcony
09-12-2008, 09:28 PM
Re: Sites disappear from connection menu over time

You mentioned a possible warning when closing FlashFXP... when I was closing my last two instances (in order to upgrade to the latest beta) I had two crashes:

http://home.comcast.net/~jcony/bugreport20080912.txt
http://home.comcast.net/~jcony/bugreport20080912b.txt

I also noticed a ghost flashfxp.exe eating 15mb of memory via the Windows Task Manager (which I killed before upgrading).

For the record, with build 1284, upon initially opening and connecting to one site from a fresh Windows reboot, FlashFXP has:
User Objects: 156
GDI Objects: 238
Handles: 237

It might take some time to reproduce the senario again, but I will be back to update!
FlashFXP Developer
bigstar
09-13-2008, 01:21 PM
Re: Sites disappear from connection menu over time

The errors posted in your bug report were just recently fixed and should be completely resolved in build 1280+
Junior Member
jcony
09-13-2008, 06:56 PM
Re: Sites disappear from connection menu over time

No major problems with the new build yet. However, I did have one instance that had only a few connection menu items show up and almost immediately after I ended up with an error report:

http://home.comcast.net/~jcony/bugreport20080913.txt

This did not follow the same trend as before, after I closed that instance and opened a new one, ALL the connection menu items were available. Just posting this incase it happens to be related; this is the first time I have noticed all items back after only a few showed up without restarting Windows.

exception message : Error reading TreeSite.Indent: Win32 Error. Code: 8.Not enough storage is available to process this command. <-- I have plenty of free memory and HDD space again. Can you shed any light on this ambiguos message?

UPDATE: Some googling has led me to adjust some registry setting which might help aliviate this from happening. I have set the IRPStackSize value to 25 to see if it helps any.

http://winhlp.com/node/40
Junior Member
jcony
09-13-2008, 11:54 PM
Re: Sites disappear from connection menu over time

Gah, still running into original issue. /me wonders if Windows Server or Vista editions are any better with memory mangement... at least im guessing thats where this is going
FlashFXP Developer
bigstar
09-14-2008, 02:50 PM
Re: Sites disappear from connection menu over time

I wonder if re-organizing your site manager list would give you some relief over this problem, I have about 100 sites in my site manager, though only about 10 in root, the rest are nested in folders.

I did some tests and using your previous info as a guild
User Objects: 5844
GDI Objects: 8857
Handles: 16893
I opened 20 copies of FlashFXP, I probably could of kept going but I stopped at 20.
Then I switched from one to the next connecting to a site and started a long file transfer.
All in all I had all 20 copies connected and transferring, then I opened a new copy of FlashFXP, making it 21 copies open and proceeded to use it without any issues.

I'm using windows XP SP3.
Junior Member
jcony
09-15-2008, 06:12 PM
Re: Sites disappear from connection menu over time

So far, the handling of the connection menu seems alot more stable with the latest build. I took your advice and consolidated all the root connection menu sites into a mere 3 OUs now as well. I am also running XP SP3 btw.
Ticket Tools
Subscribe to this Ticket


Posting Rules
You may not post new tickets

Smilies are On
[IMG] code is On
HTML code is Off


All times are GMT -5. The time now is 09:37 PM.

Parts of this site powered by vBulletin Mods & Addons from DragonByte Technologies Ltd. (Details)