program tip

Visual Studio 내에서 LARGEADDRESSAWARE를 설정할 수 있습니까?

radiobox 2020. 11. 23. 07:57
반응형

Visual Studio 내에서 LARGEADDRESSAWARE를 설정할 수 있습니까?


32 비트 여야하고 / LARGEADDRESSAWARE 여야하는 .net 어셈블리가 있습니다.

EditBin으로이 작업을 수행하는 방법을 알고 있지만 Visual Studio 2010에 기본 제공 방법이 있는지 궁금합니다. 또는 누군가가 이에 대한 MSBuild 작업을 작성 했습니까?

편집 : 이것은 C # 앱용이므로 슬프게도 링커 옵션이 없습니다.


빌드 후 작업으로 수행 할 수 있습니다. "Build Events"탭에서 다음 명령을 입력하십시오.

editbin /largeaddressaware $(TargetPath)

"빌드 후 이벤트 명령 줄 :"에

VS2008의 경우입니다. VS2010에서도 같은 방식으로 작동해야한다고 생각합니다.


@RouMao의 답변을 바탕으로 editbin 을 찾을 수 없다는 오류 메시지가 표시 될 수 있습니다. 다음과 같이 지정하여 빌드 후 이벤트 명령 줄의 환경이 올바르게 설정되었는지 확인합니다.

call "$(VS100COMNTOOLS)..\tools\vsvars32.bat"
editbin /largeaddressaware $(TargetPath)

이해해야 할 또 다른 사항은 LARGEADDRESSAWARE활성화 된 응용 프로그램이 ( Debug프로젝트 속성 아래 ) Enable the Visual Studio hosting process확인란이 선택되어있을 때 (기본적으로) 디버깅 모드에서 실행 vshost.exe되지 않는다는 것입니다.

를 사용하여 애플리케이션을 디버깅하려면이 체크 박스를 선택 취소합니다 LARGEADDRESSAWARE.


이것은 빌드 후 바이너리에 LargeAddressAware를 설정할 수있는 NuGet 패키지입니다. https://github.com/KirillOsenkov/LargeAddressAware

프로그래밍 방식으로 플래그를 설정하는 관리 앱이 있으므로 editbin.exe가 필요하지 않습니다. https://github.com/KirillOsenkov/LargeAddressAware/blob/master/SetLargeAddressAware/LargeAddressAware.cs

업데이트 : 사용하려면 패키지를 설치하고 .csproj에 다음 속성을 추가하면됩니다.

<PropertyGroup> <LargeAddressAware>true</LargeAddressAware> </PropertyGroup>

참고 URL : https://stackoverflow.com/questions/2597790/can-i-set-largeaddressaware-from-within-visual-studio

반응형