 |
|
 |
Please,
I need make a back track of DLL calls.
The scene is:
APP.EXE --(call)--> DLL1.DLL --(call)--> DLL2.DLL
| |
+<----------------<------------------<-+
The question is:
How I can perform a back trace to get the DLL1.DLL
name and path from DLL2.DLL?
I can get APP.EXE, but not DLL1.DLL.
Can you help me?
Thank's
willian@williansilva.net
Willian S. Rodrigues
willian_cpp_br@hotmail.com
|
|
|
|
 |
|
 |
hjhjhj hghg ljk j
|
|
|
|
 |
|
 |
how can i make dll send a messages to application
salah
gis member
|
|
|
|
 |
|
 |
You wrote:
"how can i make dll send a messages to application "
all methods look similar this:
CWnd* pWnd = AfxGetMainWnd();
...
pWnd->SendMessage(...)
Vitali
http://www.creative-case.com
|
|
|
|
 |
|
 |
I have the latest SDK library installed on my machine, but when I tried to compile the source, it came back with a message that it couldn't open file '.\pdh.Lib'. What is it talking about?
Another thing, because I am running Win2k, would there be a problem if I were to remove all those Win98 '.cpp' (with their corresponding '.h') files from use?
Thanks.
William
|
|
|
|
 |
|
 |
How to unload DLL loaded by another process, for example, shell extension DLL to allow Visual C++ relink its file?
|
|
|
|
 |
|
 |
This is a very useful tool, that also shows dlls that are loaded halfway your program run, while MS Depends shows only dlls loaded at startup.
However, when using the NT version with Windows 2000 the program seems to have a bug (although it could be a Microsoft bug).
For example, when you run a program that uses the MSVCRT.DLL the program shows file version nr "6.10.8637.0", while the actual version is "6.1.8637.0" (both in the dll's properties and defined on the microsoft website).
The following query for the fileversionnr results in the correct version nr:
if ( ::VerQueryValue( (void **)m_lpVersionData, _T("\\"), &lpData, &nQuerySize ) )
{
VS_FIXEDFILEINFO versionInfo = *(VS_FIXEDFILEINFO*)lpData;
UINT uiMajorNr = HIWORD(versionInfo.dwFileVersionMS);
UINT uiMinorNr = LOWORD(versionInfo.dwFileVersionMS);
UINT uiBuildNr = HIWORD(versionInfo.dwFileVersionLS);
etc
|
|
|
|
 |
|
 |
to find the DLL Version: it looks in the search path for a matching module (dll) and displays the version directly from the found file and and not from the dll the process actually loaded.
Under certain circumstances there can be differences: If a dll is already in memory, a process will use this first! So if an other process has already loaded a dll succeeding load will get the same dll.
So this tool can help analyze the dll hell where 'depends' can not
|
|
|
|
 |
|
 |
You can use a utility called 'Depends' which can be found in the VS, Tools director
|
|
|
|
 |
|
 |
'Depends' shows only static-link libraries, not dynamic..
|
|
|
|
 |
|
 |
And 'Depends' doesn't show really loaded dll in memory.
It can be used for dll and exe file without running them.
|
|
|
|
 |
|
 |
http://www.dependencywalker.com (from here you can get the last version supplied in only with .NET though)
Its true. On file open this tools displays only static dependecies( and delay loaded modules are verified).
On the other side, this tool can start profiling and checks all dynamic dependecies( including COM dependecies).
Also this is tool detects dll colision( rellocation) and lot of other stuff
|
|
|
|
 |