繁体   English   中英

C# 支持 x64 和 x86

[英]C# support both x64 and x86

我正在开发一个 C# 项目,我必须同时支持 x64 和 x86 架构。 我必须调用一些 kernel32 函数,如 WriteProcessMemory。

在 WriteProcessMemory 的情况下,“SIZE_T nSize”取决于我编译的架构,uint32 或 uint64。 我考虑过使用 IntPtr,因为它也依赖于体系结构,但之后我仍然需要检查大小以了解是否应该转换为 uint32 或 uint64。

有没有更好的方法来解决这个问题?

此问题的最佳解决方案是对所有地址、指针和偏移量使用 IntPtr(),然后构建单独的 x86 和 x64 可执行文件。 然后为您希望定位的进程使用相应的可执行文件。

几乎所有流行的内存工具都使用这种技术,因为它代表的头痛最少。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM