Hi,
We are evaluating Thinapp within my firm and have just conducted some network performance testing to see how well the tool copes when the .dat & .exe files are accessed via a remote Windows fileshare.
Using a Network sniffer we have found some strange behaviour where repeated requests to access system DLL's (e.g. shell32.dll) within the remote ".dat" file are made. Now, if the particular DLL being access has not been packaged then we receive a "not found" message returned which I assume is normal..and the loca installed version would be used instead.
What is strange though is that if that same DLL is accessed again, ThinApp appears to make another network request for the same DLL which of course fails again. And so on.....each time the DLL is accessed.
This doesn't seem to be very efficient -- I would have thought that ThinApp should only make one request, and after that "remember" the fact that a particular DLL had not been packaged.
Have a look at the trace below.
Andy
32440 28884.317250 130.22.101.116 A3449ZDZXF8UJTW SMB SMB:R; Transact2, Find First2, Both Directory Info (NT)
32441 28884.317250 A3449ZDZXF8UJTW 130.22.101.116 SMB SMB:C; Transact2, Query Path Info, Query File Basic Info, Pattern = \shell32.dll
32442 28884.317250 130.22.101.116 A3449ZDZXF8UJTW SMB SMB:R; Transact2, Query Path Info - NT Status: System - Error, Code = (52) STATUS_OBJECT_NAME_NOT_FOUND
32443 28884.317250 A3449ZDZXF8UJTW 130.22.101.116 SMB SMB:C; Transact2, Query Path Info, Query File Basic Info, Pattern = \shell32.dll
32444 28884.317250 130.22.101.116 A3449ZDZXF8UJTW SMB SMB:R; Transact2, Query Path Info - NT Status: System - Error, Code = (52) STATUS_OBJECT_NAME_NOT_FOUND
32445 28884.317250 A3449ZDZXF8UJTW 130.22.101.116 SMB SMB:C; Transact2, Find First2, Both Directory Info (NT), Pattern = \shell32.dll
32446 28884.317250 130.22.101.116 A3449ZDZXF8UJTW SMB SMB:R; Transact2, Find First2 - NT Status: System - Error, Code = (15) STATUS_NO_SUCH_FILE
32447 28884.317250 A3449ZDZXF8UJTW 130.22.101.116 SMB SMB:C; Transact2, Find First2, Both Directory Info (NT), Pattern = \royalblue fidessa.dat
32448 28884.332875 130.22.101.116 A3449ZDZXF8UJTW SMB SMB:R; Transact2, Find First2, Both Directory Info (NT)
32449 28884.332875 A3449ZDZXF8UJTW 130.22.101.116 SMB SMB:C; Transact2, Find First2, Both Directory Info (NT), Pattern = \royalblue fidessa.dat
32450 28884.332875 130.22.101.116 A3449ZDZXF8UJTW SMB SMB:R; Transact2, Find First2, Both Directory Info (NT)
32451 28884.332875 A3449ZDZXF8UJTW 130.22.101.116 SMB SMB:C; Transact2, Query Path Info, Query File Basic Info, Pattern = \shell32.dll
32452 28884.332875 130.22.101.116 A3449ZDZXF8UJTW SMB SMB:R; Transact2, Query Path Info - NT Status: System - Error, Code = (52) STATUS_OBJECT_NAME_NOT_FOUND
32453 28884.332875 A3449ZDZXF8UJTW 130.22.101.116 SMB SMB:C; Transact2, Query Path Info, Query File Basic Info, Pattern = \shell32.dll
32454 28884.348500 130.22.101.116 A3449ZDZXF8UJTW SMB SMB:R; Transact2, Query Path Info - NT Status: System - Error, Code = (52) STATUS_OBJECT_NAME_NOT_FOUND
32455 28884.348500 A3449ZDZXF8UJTW 130.22.101.116 SMB SMB:C; Transact2, Find First2, Both Directory Info (NT), Pattern = \shell32.dll