![](/img/trans.png)
[英]How can my program determine if it is running on 32-bit or 64-bit Windows?
[英]How come my 64-bit program is calling a 32-bit DLL successfully?
我有一個 C# 程序,為平台目標 x64 編譯。 它使用 C1.C1Zip,一個 dll 文件來處理 Zip 文件。 檢查 C1.C1Zip.dll,它是一個 32 位 dll(PE 解構器這么說 - 32 位字)。 但我的程序絕對是 64 位的(任務管理器這么說 - 詳細信息選項卡說平台 64 位)。
我剛剛成功運行了使用 C1.C1Zip dll 的代碼,並且運行良好。 我被告知這是不可能的。
怎么會這樣?
我可以運行哪些額外的診斷程序來確保我的主程序確實是 64 位的?
因為它不是一個原生的 dll 開始。 它是托管代碼 - 字節碼 - 只有。 在這種情況下,32 位或 64 位與起始 exe 文件相關(確定進程是運行 32 位還是 64 位),但與稍后加載的本機程序集無關。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.