windows - 如何在 IIS Express 中引用 native 文件?

标签 windows asp.net-mvc-4 iis iis-express

我拥有的是一个 Asp.Net MVC 项目,它引用了一个 c++/cli 程序集,而该程序集又引用了一些 native c++ dll。最终将其发布到 Web 角色中的 Azure Web 服务。

This建议在启动任务中将 native dll 复制到“%windir%\system32\inetsrv”文件夹,以便 Web 角色在启动时可以找到它们。这在云上按预期工作。

但是,在本地调试时,我希望 IIS Express 可以使用这些 dll。这些是 64 位 dll,因此我必须运行 IIS Express 的 64 位版本。我正在尝试找出 IIS Express 64 位的 %windir%\system32\inetsrv 的等效值。

最佳答案

事实证明,问题出在 %windir%。

在 64 位计算机上,运行 32 位进程时会重定向到 SysWoW64。

由于 VS 是 32 位,因此启动任务从 VS 内作为 32 位进程运行,并且文件被复制到错误的目录。

使用%windir%\Sysnative当从 VS 和 %windir% 工作时,否则可以解决完整 IIS 的问题。

对于 IIS Express,要复制到的正确目录是“C:\Program Files\IIS Express”

关于windows - 如何在 IIS Express 中引用 native 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24246547/

相关文章:

asp.net-mvc-3 - Elmah 不发送电子邮件

asp.net - 带有 HTTP header 的 URL 重写规则

c# - Windows 8 点击并按住事件 C#

c++ - 将位图保存到从中加载的同一文件

java - Windows 上的“主机名”等效项

wcf - Entity Framework 消耗大量内存(可能是内存泄漏?)

asp.net - ASP.NET 的 IIS 7 中缺少 MIME 类型 - 404.17

windows - 为什么 Git 命令的长结果会终止我的 PowerShell 提示符?

asp.net-mvc-4 - AngularJs、DropZone.Js、MVC4 - 拖放和预览预先上传的图像

c# - HelperResult 的表达式以格式化列表中的项目