Hi all (and Steve, if he is still here and read this),
that question is independent from my last question.
My students and I are using a program to calculate energy balances and the like. The functionality of this program can be extended by own functions.
For this I write such functions, which are compiled as a DLL. The DLLs I distribute. And for most of the students, it works without any problem. But for some students (on some computers) the DLL is shown as not be found. In that cases I distribute all DLLs to, which are shown in the dependency walker as used in my DLL.
That are (maybe it can be useful to know):
bcryptprimitives.dll
cfgmgr32.dll
cryptbase.dll
dbghelp.dll
devobj.dll
devrtl.dll
dhcpcsvc.dll
dhcpcsvc6.dll
dnsapi.dll
imagehlp.dll
IPHLPAPI.DLL
kernel32.dll
KernelBase.dll
nsi.dll
ntdll.dll
rpcrt4.dll
sspicli.dll
winnsi.dll
(The use of some of these DLLs I do not understand in this context.)
But the real question is, what the students can do that they can use my DLL. Do anyone help?
Olaf
連結已複製
The MS Windows DLLs (e.g. kernel32.dll, ntdll.dll, etc...) should not be distributed with your program. They should be present on every Windows system *** The students may have different versions of MS Windows than your development system.
Jim Dempsey
>>yes, I replace only not already existing files. I don't touch existing files
A "standard" practice is to install the required DLLs into the same folder as the execuitable, or into a user folder in PATH. Attempting to copy the Windows DLLs into either folder will not yield a "Replace...". It is strongly recommended that you do not mix one version of a Windows DLL with another version.
You should never install your DLL into System32 or elsewhere in the Windows folders.
Jim Dempsey
