c#在x64上崩溃

本文关键字:崩溃 x64 | 更新日期: 2023-09-27 17:50:13

我有一个在VS 2008中创建并用c#编写的DLL。dll项目使用"Any CPU"标志进行构建。

当它被部署并运行在戴尔/英特尔Windows 7 x64机器上时,它启动正常,但当它试图开始使用加密时崩溃——TDESAlgorithm.CreateDecryptor();

这是mscorlib.dll的一部分。

我已经建立了应用程序为目标x64,但它也崩溃在同一地方。它在32位机器上运行良好。

我怎样才能让这个在x64上成功运行?

c#在x64上崩溃

我在使用。net创建windows服务时遇到了类似的问题。它抛出异常,Windows日志文件指出mscorlib.dll和kernel32.dll中的错误(如果我没记错的话)。没有使用外部32位dll或特殊代码,只有普通的。net .

我得到的解决方案是编译为x86,然后在64位机器上运行它(作为32位)应用程序。这可能是一个解决方案,只要你不需要64位运行你的应用程序。

我得到的解决方案是编译为x86,然后运行它(作为32位)64位机器上的应用程序。这可能是一个解决方案,只要因为你不需要64位来运行你的应用程序- Gaël Mo

我只是想指出,在64位机器上编译和运行x86是不是一个答案…Joe想知道为什么它在x64模式下会崩溃…显然,在x86模式下运行可以在x64机器上运行。如果你不能让你的车有一个特定的售后市场的零件,你认为这是一个有效的答案,如果我告诉你只是运行汽车没有零件在里面?显然不是……在发布之前仔细考虑你的答案,好吗?

如果您为x86构建它,它是否运行在x64机器上?如果是这样,他们有些东西不是64位的。——sgmoore

我同意……我想补充一点,如果你没有源代码(你可能没有),那么你恐怕就不走运了……我发现这篇文章更充分地解释了…除此之外,您可能需要查看不同的DES解密库…OpenSSL/SSH也许吗?