首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我可以从Visual Studio中设置LARGEADDRESSAWARE吗?

我可以从Visual Studio中设置LARGEADDRESSAWARE吗?
EN

Stack Overflow用户
提问于 2010-04-08 13:38:23
回答 3查看 41.3K关注 0票数 65

我有一个需要32位并且需要是/LARGEADDRESSAWARE的.net程序集。

我知道如何使用EditBin做到这一点,但我想知道Visual Studio2010中是否有内置的方法?或者,是否有人为此编写了MSBuild任务?

编辑:这是针对C#应用程序的,所以很遗憾没有链接器选项:(

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-04-08 16:15:05

您可以将其作为后期构建任务来执行。在"Build Events“选项卡中,输入以下命令

代码语言:javascript
复制
editbin /largeaddressaware $(TargetPath)

"Post-build event“命令行中:

这就是VS2008的情况。我认为它应该以同样的方式工作在VS2010上。

票数 49
EN

Stack Overflow用户

发布于 2010-10-19 04:39:56

根据@RouMao的回答,您可能会收到一条错误消息,指出无法找到editbin。通过指定如下内容,确保正确设置生成后事件命令行中的环境:

代码语言:javascript
复制
call "$(VS100COMNTOOLS)..\tools\vsvars32.bat"
editbin /largeaddressaware $(TargetPath)

另一件要理解的事情是,当(在项目属性中的Debug选项卡下)选中Enable the Visual Studio hosting process复选框(默认情况下)时,启用LARGEADDRESSAWARE的应用程序将不会在调试模式下运行,因为vshost.exe没有正确标记。

取消选中该框可使用LARGEADDRESSAWARE调试应用程序。

票数 97
EN

Stack Overflow用户

发布于 2019-12-23 09:30:08

如果使用以下命令编译程序集:

代码语言:javascript
复制
<PlatformTarget>AnyCPU</PlatformTarget>
<Prefer32Bit>true</Prefer32Bit> <!--Default !false!-->

则生成的程序集将自动接收LARGE ADDRESS AWARE标志。

使用VS 2019进行测试(根据Why does 'Any CPU (prefer 32-bit)' allow me to allocate more memory than x86 under .NET 4.5?,需要Visual Studio 2015+ )。

因此,在大多数情况下,您不需要任何特殊操作。默认情况下,您的AnyCPU程序集将在x86 + LAA下执行。

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

https://stackoverflow.com/questions/2597790

复制
相关文章

相似问题

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