Chris Delaney wrote:
> Thank you for the response.  I tried both of your suggestions, but the 
> problem remains.  The xxx.dll.manifest file was generated during the 
> build, but copying it to the .../plugins/0.99.5 directory did not 
> allow the plugin to be loaded.  Also, the machine I am trying to run 
> the WS distribution is the same as where VC is installed, but I 
> installed vcredist_x86.exe anyway and again, the plugin failed to load.
>
> One thing I did notice was that the .dll's included with the general 
> distribution require these .dll's:
>
> libwireshark.dll
> MSVCRT.dll
> KERNEL32.dll
>
> The .dll's that I create with MSVC05EE require these .dll's:
>
> libwireshark.dll
> MSVCR80.dll
> KERNEL32.dll
That's what I would expect.
>
> I have the C runtime library MSVCRT.dll in my system32 directory, but 
> I do not have MSVCR80.dll anywhere within my library path, despite 
> having installed vcredist_x86.exe, and MSVC05EE.  
You should find at least one appearance of MSVCR80.dll in one of the 
c:\windows\SxS folders, that's where Studio and vcredist_x86.exe will 
install it into. The SxS folders are a new MS way to prevent the DLL 
hell, but I don't know much more about this feature.
> After I copied MSVCR80.dll into my system32 directory, the error 
> message changed:
>
> From:
> Couldn't load module <path>\xxx.dll: The specified module could not be 
> found.
>
> To:
> Couldn't load module <path>\xxx.dll: The specified procedure could not 
> be found.
>
> So it seems that the MS C Runtime Library is at fault here, but I 
> still can't seem to nail down the issue.  Is there a dependency that 
> .dll's compiled with MSVC05EE are not compatible with a .exe compiled 
> with MSVC06?
>
Yes and no. It should be possible (we use the GTK dlls that are compiled 
with MSVC6 with the MSVC2005EE studio builds - so mixing Dlls is 
possible), but you have to be very careful about passing C runtime 
resources (e.g. FILE handles) between these two, but that's usually not 
a problem for a typical dissector. But this will make problems while 
running WS, not while loading it (as you have).

I'm unsure what the real problem is here. In an attempt to find the 
cause you may try to strip down the plugin content to an absolute 
minimum content (e.g. #if 0 out all "functional" parts) and see if this 
fixes your problem - in this case a call within your dissector code is 
the problem..

The only solution that should work is to use the MSVC2005EE generated 
Wireshark instead of the official one.

Regards, ULFL
_______________________________________________
Wireshark-dev mailing list
[email protected]
http://www.wireshark.org/mailman/listinfo/wireshark-dev

Reply via email to