Does anyone have problems with the Stackwalk-API on Windows Vista
(32bit)?
We have an application (written in VB6) which lists a callstack when
an error occurs. This works well on WXP and W2K. The code relates to
Dan Fergus' article in the VSM 05/2002 "Get Debug Info From Production
apps".
Vista: the first call to Stackwalk() returns 1 (True), the 2nd call
returns 0 with GetLastError() returning also 0.
We also tried to create the PDB-File on Vista, without success.
Call:
lRet = StackWalk(IMAGE_FILE_MACHINE_I386, _
m_hProcess, _
m_hThread, _
m_oStackFrame, _
0&, _
0&, _
m_ProcAddrSymFunctionTableAddress, _
m_ProcAddrSymGetModuleBase, _
0&)
m_hThread = GetCurrentThread()
With m_oStackFrame
.tAddrPC.lOffset = GetIP.Call
.tAddrPC.Mode = AddrModeFlat
.tAddrFrame.lOffset = GetEBP.Call
.tAddrFrame.Mode = AddrModeFlat
.tAddrStack.lOffset = GetESP.Call
.tAddrStack.Mode = AddrModeFlat
End With