首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >框架/框架64和系统32/Syswow64 64

框架/框架64和系统32/Syswow64 64
EN

Stack Overflow用户
提问于 2014-10-02 19:58:59
回答 1查看 2.4K关注 0票数 2

我将我的项目构建为64位(不是任何CPU),特别是64位。所有的dll都是64位的,其中大部分是托管代码(C#),一些文件是非托管的(C++代码)。

我在Installshield中创建了一个安装程序,我需要注册dll。我在网上读了很多书,我很困惑。

  • regsvr32 ->注册我的C++ dll,我应该使用哪个regsvr32.exe?System32或Syswow64.
  • 注册我的-> C# dll,我应该使用哪个C#?框架/框架64
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-03 12:34:59

在64位系统上,由64位应用程序查看:

  • System32:包含64位系统文件
  • SysWow64:包含32位系统文件

在64位系统上,由32位应用程序查看:

  • System32:通常重定向到SysWow64,因此访问32位系统文件。
  • SysNative:重定向到真正的System32;访问64位文件。

在64位系统上,文件系统重定向被禁用(请参阅IntallScript的WOW64FSREDIRECTIONWow64DisableWow64FsRedirection),如果您碰巧有到System32文件夹的路径,它将访问64位文件。

Regasm不在这个位置;相反,32位构建在Windows\Microsoft.NET\Framework\<version>中,64位构建在Windows\Microsoft.NET\Framework64\<version>中。这里没有奇怪的文件夹名,但不是系统文件夹。

备注:注册文件需要正确的比特性和正确的应用程序。此外,如果您正在创建一个Windows包(例如,一个基本的MSI项目),您不应该在安装时调用这样的工具;您应该使用构建时工具,如本地DLL的COM提取和托管程序集的COM Interop,将它们的自注册转换为MSI数据:正确标记组件的64位设置,并假定InstallShield处理其余的设置。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26168654

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档