Dear All,
Meanwhile I had time to follow Valeri’s suggestion and created a DLL “MyClass.dll” which depends on
another DLL “MyClassIOMT.dll” (I am attatching the source code for both libraries).
As expected when compiling both DLLs with option /MT everything works as expected on Windows XP,
although the output of Dependency Walker displays some error messages, see:
LoadLibraryA("C:/home/Rabbitus/CRAN/myRlib/MyClass/libs/MyClass.dll") called from "R.DLL" at address 0x6C7102C8.
Loaded "MYCLASS.DLL" at address 0x10000000. Successfully hooked module.
Loaded "LIBMYCLASSIOMT.DLL" at address 0x02A80000. Successfully hooked module.
DllMain(0x02A80000, DLL_PROCESS_ATTACH, 0x00000000) in "LIBMYCLASSIOMT.DLL" called.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsAlloc") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8DCEB and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsGetValue") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8DCF8 and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsSetValue") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8DD05 and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsFree") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8DD12 and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8D89A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8D89A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8D89A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8D89A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8D89A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8D89A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8D89A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "DecodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8D915 and returned 0x7C92393D.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "DecodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8D915 and returned 0x7C92393D.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8D9E9 and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "DecodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x02A8D9F9 and returned 0x7C92393D.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "IsProcessorFeaturePresent") called from "LIBMYCLASSIOMT.DLL" at address 0x02A91006 and returned 0x7C80ACB2.
DllMain(0x02A80000, DLL_PROCESS_ATTACH, 0x00000000) in "LIBMYCLASSIOMT.DLL" returned 1 (0x1).
DllMain(0x10000000, DLL_PROCESS_ATTACH, 0x00000000) in "MYCLASS.DLL" called.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsAlloc") called from "MYCLASS.DLL" at address 0x1000BBAE and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsGetValue") called from "MYCLASS.DLL" at address 0x1000BBBB and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsSetValue") called from "MYCLASS.DLL" at address 0x1000BBC8 and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsFree") called from "MYCLASS.DLL" at address 0x1000BBD5 and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000B7D8 and returned 0x7C92393D.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000B7D8 and returned 0x7C92393D.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B8AC and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000B8BC and returned 0x7C92393D.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "IsProcessorFeaturePresent") called from "MYCLASS.DLL" at address 0x1000E7C4 and returned 0x7C80ACB2.
DllMain(0x10000000, DLL_PROCESS_ATTACH, 0x00000000) in "MYCLASS.DLL" returned 1 (0x1).
LoadLibraryA("C:/home/Rabbitus/CRAN/myRlib/MyClass/libs/MyClass.dll") returned 0x10000000.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "SetDllDirectoryA") called from "R.DLL" at address 0x6C710149 and returned 0x7C85EB26.
GetProcAddress(0x10000000 [MYCLASS.DLL], "R_init_MyClass") called from "R.DLL" at address 0x6C71011B and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x10000000 [MYCLASS.DLL], "WriteFileC") called from "R.DLL" at address 0x6C71011B and returned 0x10007C00.
In contrast, compiling both DLLs with option /MT on Vista crashes R and the result of Dependency Walker is:
LoadLibraryA("C:/home/Rabbitus/CRAN/myRlib/MyClass/libs/MyClass.dll") called from "R.DLL" at address 0x6C7102C8.
Loaded "MYCLASS.DLL" at address 0x10000000. Successfully hooked module.
Loaded "LIBMYCLASSIOMT.DLL" at address 0x02300000. Successfully hooked module.
DllMain(0x02300000, DLL_PROCESS_ATTACH, 0x00000000) in "LIBMYCLASSIOMT.DLL" called.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsAlloc") called from "LIBMYCLASSIOMT.DLL" at address 0x0230DCEB and returned 0x769F4C08.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsGetValue") called from "LIBMYCLASSIOMT.DLL" at address 0x0230DCF8 and returned 0x76A1C714.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsSetValue") called from "LIBMYCLASSIOMT.DLL" at address 0x0230DD05 and returned 0x76A144B9.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsFree") called from "LIBMYCLASSIOMT.DLL" at address 0x0230DD12 and returned 0x769FF3C8.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x0230D89A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x0230D89A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x0230D89A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x0230D89A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x0230D89A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x0230D89A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x0230D89A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "DecodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x0230D915 and returned 0x76DEDB15.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "DecodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x0230D915 and returned 0x76DEDB15.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x0230D9E9 and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "DecodePointer") called from "LIBMYCLASSIOMT.DLL" at address 0x0230D9F9 and returned 0x76DEDB15.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "IsProcessorFeaturePresent") called from "LIBMYCLASSIOMT.DLL" at address 0x02311006 and returned 0x769F0A06.
DllMain(0x02300000, DLL_PROCESS_ATTACH, 0x00000000) in "LIBMYCLASSIOMT.DLL" returned 1 (0x1).
DllMain(0x10000000, DLL_PROCESS_ATTACH, 0x00000000) in "MYCLASS.DLL" called.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsAlloc") called from "MYCLASS.DLL" at address 0x1000BBAE and returned 0x769F4C08.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsGetValue") called from "MYCLASS.DLL" at address 0x1000BBBB and returned 0x76A1C714.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsSetValue") called from "MYCLASS.DLL" at address 0x1000BBC8 and returned 0x76A144B9.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsFree") called from "MYCLASS.DLL" at address 0x1000BBD5 and returned 0x769FF3C8.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B75D and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000B7D8 and returned 0x76DEDB15.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000B7D8 and returned 0x76DEDB15.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000B8AC and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000B8BC and returned 0x76DEDB15.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "IsProcessorFeaturePresent") called from "MYCLASS.DLL" at address 0x1000E7C4 and returned 0x769F0A06.
DllMain(0x10000000, DLL_PROCESS_ATTACH, 0x00000000) in "MYCLASS.DLL" returned 1 (0x1).
LoadLibraryA("C:/home/Rabbitus/CRAN/myRlib/MyClass/libs/MyClass.dll") returned 0x10000000.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "SetDllDirectoryA") called from "R.DLL" at address 0x6C710149 and returned 0x76A61B1E.
GetProcAddress(0x10000000 [MYCLASS.DLL], "R_init_MyClass") called from "R.DLL" at address 0x6C71011B and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x10000000 [MYCLASS.DLL], "WriteFileC") called from "R.DLL" at address 0x6C71011B and returned 0x100049D0.
HEAP[RTERM.EXE]: Invalid address specified to RtlFreeHeap( 02380000, 02472ED8 )
At the moment I do not know how to interpret these results since strangely Dependency Walker reports
errors for “FlsAlloc”, “FlsGetValue” and “FlsSetValue” on WinXP only but NOT on Vista. Nevertheless,
the DLLs work on WinXP but not on Vista
In addition I have also compiled a standolone DLL with option /MT, which works ok on both WinXP and Vista.
However, the output of Dependency Walker on WinXP shows some errors:
LoadLibraryA("C:/home/Rabbitus/CRAN/myRlib/MyClass/libs/MyClass.dll") called from "R.DLL" at address 0x6C7102C8.
Loaded "MYCLASS.DLL" at address 0x10000000. Successfully hooked module.
DllMain(0x10000000, DLL_PROCESS_ATTACH, 0x00000000) in "MYCLASS.DLL" called.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsAlloc") called from "MYCLASS.DLL" at address 0x1000E2DB and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsGetValue") called from "MYCLASS.DLL" at address 0x1000E2E8 and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsSetValue") called from "MYCLASS.DLL" at address 0x1000E2F5 and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsFree") called from "MYCLASS.DLL" at address 0x1000E302 and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000DF05 and returned 0x7C92393D.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000DF05 and returned 0x7C92393D.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DFD9 and returned 0x7C923917.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000DFE9 and returned 0x7C92393D.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "IsProcessorFeaturePresent") called from "MYCLASS.DLL" at address 0x10010F34 and returned 0x7C80ACB2.
DllMain(0x10000000, DLL_PROCESS_ATTACH, 0x00000000) in "MYCLASS.DLL" returned 1 (0x1).
LoadLibraryA("C:/home/Rabbitus/CRAN/myRlib/MyClass/libs/MyClass.dll") returned 0x10000000.
GetProcAddress(0x7C800000 [KERNEL32.DLL], "SetDllDirectoryA") called from "R.DLL" at address 0x6C710149 and returned 0x7C85EB26.
GetProcAddress(0x10000000 [MYCLASS.DLL], "R_init_MyClass") called from "R.DLL" at address 0x6C71011B and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x10000000 [MYCLASS.DLL], "WriteFileC") called from "R.DLL" at address 0x6C71011B and returned 0x10007C00.
Interestingly, the output of Dependency Walker on Vista does not show these errors:
LoadLibraryA("C:/home/Rabbitus/CRAN/myRlib/MyClass/libs/MyClass.dll") called from "R.DLL" at address 0x6C7102C8.
Loaded "MYCLASS.DLL" at address 0x10000000. Successfully hooked module.
DllMain(0x10000000, DLL_PROCESS_ATTACH, 0x00000000) in "MYCLASS.DLL" called.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsAlloc") called from "MYCLASS.DLL" at address 0x1000E2DB and returned 0x769F4C08.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsGetValue") called from "MYCLASS.DLL" at address 0x1000E2E8 and returned 0x76A1C714.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsSetValue") called from "MYCLASS.DLL" at address 0x1000E2F5 and returned 0x76A144B9.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "FlsFree") called from "MYCLASS.DLL" at address 0x1000E302 and returned 0x769FF3C8.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DE8A and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000DF05 and returned 0x76DEDB15.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000DF05 and returned 0x76DEDB15.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "EncodePointer") called from "MYCLASS.DLL" at address 0x1000DFD9 and returned 0x76DDFB66.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "DecodePointer") called from "MYCLASS.DLL" at address 0x1000DFE9 and returned 0x76DEDB15.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "IsProcessorFeaturePresent") called from "MYCLASS.DLL" at address 0x10010F34 and returned 0x769F0A06.
DllMain(0x10000000, DLL_PROCESS_ATTACH, 0x00000000) in "MYCLASS.DLL" returned 1 (0x1).
LoadLibraryA("C:/home/Rabbitus/CRAN/myRlib/MyClass/libs/MyClass.dll") returned 0x10000000.
GetProcAddress(0x769D0000 [KERNEL32.DLL], "SetDllDirectoryA") called from "R.DLL" at address 0x6C710149 and returned 0x76A61B1E.
GetProcAddress(0x10000000 [MYCLASS.DLL], "R_init_MyClass") called from "R.DLL" at address 0x6C71011B and returned NULL. Error: Die angegebene Prozedur wurde nicht gefunden (127).
GetProcAddress(0x10000000 [MYCLASS.DLL], "WriteFileC") called from "R.DLL" at address 0x6C71011B and returned 0x10007C00.
Once again Dependency Walker reports errors for “FlsAlloc”, “FlsGetValue” and “FlsSetValue” on WinXP
only but NOT on Vista. However in this case the single DLL works on both WinXP AND Vista.
From my current results it seems that at the moment it does not make sense to try to compile ROOT with
option /MT (although it may still be worthwile for other purposes).
Best regads
Christian
P.S.:
It is quite clear to me that this problem is an R problem and not a ROOT problem, but the R developers
are reluctant to help since they have abandoned VC++ long time ago.
In contrast the ROOT developers are ALWAYS very helpful, even when I am asking questions which are NOT
directly related to ROOT. I appreciate this very much!!!
MyClass_0.6.0.tar.gz (12.6 KB)
MyClassIO_0.6.0.tar.gz (221 KB)