R
roidy
That's the thing, it`s not a problem with the version of VS used as both
versions of the dll file were compiled using Visual C Express 2008 the only
difference was one was compiled in WinXp and the other in Windows 7. It`s
just the version compiled under WinXp wouldn`t work in Windows 7.
Rob
versions of the dll file were compiled using Visual C Express 2008 the only
difference was one was compiled in WinXp and the other in Windows 7. It`s
just the version compiled under WinXp wouldn`t work in Windows 7.
Rob
[/QUOTE]Mike said:roidy said:I just hope that the version of the dll compiled in Windows 7 will work
in WinXP. But I can't test it just yet as my XP machine is currently in
bits awaiting new parts..........
Use DEPENDS to get list of DEPENDENCIES for the LIBMP4V2.DLL. You can
also get the implicit loads using DUMPBIN.
DUMPBIN /DEPENDENTS LIBMP4V2.DLL
I wrote a command line version of DEPENDS called LDEPENDS.ZIP
ftp://ftp.santronics.com/wildcat/tools
and I use to quickly see what is needed by EXE and DLLs. It doesn't work
well with SxS baloney (but DEPENDS does)
For example, for us, WCSRV2.DLL is the our DLL for WIN32 and for .NET
DLLIMPORTING. For this solid 12 year old WIN32 version, LDEPENDS shows:
D:\wc63>ldepends wcsrv2.dll
Module: [wcsrv2.dll]
+ rpcrt4.dll
+ wsock32.dll
+ msvcrt.dll
+ mfc42.dll
+ kernel32.dll
+ user32.dll
+ advapi32.dll
+ ole32.dll
This is solid code for all WIN32 compatiable Windows OSes, but that was
compiled with VS98.
Now when its compiled using VS2005:
G:\wc7beta>ldepends wcsrv2.dll
Module: [wcsrv2.dll]
+ rpcrt4.dll
+ wsock32.dll
+ mfc80d.dll
+ msvcr80d.dll
+ kernel32.dll
+ user32.dll
+ advapi32.dll
+ ole32.dll
+ oleaut32.dll
**** report ****
MFC80D.DLL LoadLibrary() Error: 126
MSVCR80D.dll LoadLibrary() Error: 126
So there are more dependencies that uses 8.0 dlls files and these are
trying to load or aliased with SxS. Ldepends has a problem finding SxS
stuff, but when the EXE or DLL is loaded for real, the OS loader (and
DEPENDS) knows whats to do.
So your goal is to see what RTL (run time libraries) you want to use. If
you compile with VS200x then you will bring more libraries that are for
that compiler version RTL.
What I would do is find the minimum required for LIBMP3V2.DLL and stick
with it. But then again if you are compiling the main application for
.NET, then most likely you will need 8.0 (VS2005) or 9.0 (VS2008) files
anyway.