Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 2개 있습니다.)
(시리즈 글이 6개 있습니다.)
.NET Framework: 314. C++의 inline asm 사용을 .NET으로 포팅하는 방법
; https://www.sysnet.pe.kr/2/0/1267

개발 환경 구성: 240. Visual C++ / x64 환경에서 inline-assembly를 매크로 어셈블리로 대체하는 방법
; https://www.sysnet.pe.kr/2/0/1759

.NET Framework: 543. C++의 inline asm 사용을 .NET으로 포팅하는 방법 - 두 번째 이야기
; https://www.sysnet.pe.kr/2/0/10889

VS.NET IDE: 127. Visual C++ / x64 환경에서 inline-assembly를 매크로 어셈블리로 대체하는 방법 - 두 번째 이야기
; https://www.sysnet.pe.kr/2/0/11691

C/C++: 188. C++의 32비트 + Release 어셈블리 코드를 .NET으로 포팅할 때 주의할 점
; https://www.sysnet.pe.kr/2/0/13940

닷넷: 2334. C# - cpuid 명령어를 이용한 CPU 제조사 문자열 가져오기
; https://www.sysnet.pe.kr/2/0/13941




Visual C++ / x64 환경에서 inline-assembly를 매크로 어셈블리로 대체하는 방법 - 두 번째 이야기

이전에 쓴 글이 있었는데,

Visual C++ / x64 환경에서 inline-assembly를 매크로 어셈블리로 대체하는 방법
; https://www.sysnet.pe.kr/2/0/1759

아래의 글에서 더 편리한 방법을 소개하고 있습니다.

x64 Inline Assembly in Windows Driver Kit
; https://rayanfam.com/topics/inline-assembly-in-x64/

그런데, 직접 해보니까 WDK 프로젝트인 경우에는 asm 파일을 자동으로 masm.exe에 태워 빌드해 주는 반면 일반 C/C++ 프로젝트에서는 그런 배려가 없습니다. 실제로 WDK 프로젝트에서 .asm 파일을 추가하는 경우 속성 창을 통해 보면 다음과 같이 "Item Type"으로 "Microsoft Macro Assembler" 항목이 자동으로 선택되어 있지만,

macro_assembly_x64_1.png

일반 Visual C++ 프로젝트에서는 .asm 파일의 속성을 보면 다음과 같이 "Does not participate in build"로 뜨는 데다 "Microsoft Macro Assembler" 항목도 없어 선택조차 못합니다.

macro_assembly_x64_2.png

그래도 어차피 비주얼 스튜디오인데... 방법이 있지 않을까 싶어 검색해 보니 다음의 글이 나옵니다. ^^

Visual Studio 2015에서 Assembly 실행(MASM)
; http://moomini.tistory.com/80

그렇습니다. 솔루션 탐색기에서 Visual C++ 프로젝트를 우 클릭해 "Build Dependencies" / "Build Customizations..."를 선택하면 다음과 같이 masm 항목을 추가할 수 있는 설정창이 뜹니다.

macro_assembly_x64_3.png

이렇게 선택해 주고, 다시 .asm 파일의 속성을 보면 "Microsoft Macro Assembler" 항목이 보이게 되고 이를 선택하면 .asm 파일이 자동으로 빌드되고 링크 과정에 참여하게 됩니다.





[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 9/13/2018]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... [166]  167  168  169  170  171  172  173  174  175  176  177  178  179  180  ...
NoWriterDateCnt.TitleFile(s)
989정성태2/1/201134683개발 환경 구성: 103. DOS batch - 동기 방식으로 원격 서비스 제어
988정성태1/30/201130400개발 환경 구성: 102. MSBuild - DefineConstants에 다중 전처리 값 설정
987정성태1/29/201143862디버깅 기술: 33. PDB Symbol 로드 오류 - Cannot find or open the PDB file. [2]
986정성태1/26/201135407.NET Framework: 204. 분리된 ThreadPool 사용 - Smart Thread Pool
985정성태1/25/201131751디버깅 기술: 32. 인증서로 서명된 닷넷 어셈블리의 실행 지연 현상
984정성태1/25/201126359개발 환경 구성: 101. SharePoint 2010 - Form Design
983정성태1/23/201132111제니퍼 .NET: 15. 눈으로 확인하는 maxWorkerThreads, minFreeThreads 설정값 [1]
982정성태1/22/201128093개발 환경 구성: 100. SharePoint 2010 - iPad 친화적인 게시판 만들기 (사용자 지정 목록) [1]
981정성태1/19/201125133개발 환경 구성: 99. SharePoint 2010 - 웹 애플리케이션 생성 시 고려해야 할 점. [1]
980정성태1/19/201136769개발 환경 구성: 98. SharePoint 2010 - Office Web Apps 설치
979정성태1/18/201129614개발 환경 구성: 97. SharePoint 2010 팀 사이트 구성
978정성태1/16/201136859.NET Framework: 203. VPN 자동 연결 및 Router 설정 추가
977정성태1/12/201135177개발 환경 구성: 96. SharePoint 2010 설치 [5]
976정성태1/11/201158380오류 유형: 111. IIS - 500.19 오류 (0x8007000d)
975정성태1/10/201131544.NET Framework: 202. CLR JIT 컴파일러가 생성한 기계어 코드 확인하는 방법 [3]파일 다운로드1
974정성태1/8/201131087.NET Framework: 201. 윈폼 TreeView - Bold 폰트 설정 후 텍스트가 잘리는 문제 [1]파일 다운로드1
973정성태1/7/201130154.NET Framework: 200. IIS Metabase와 ServerManager 개체 활용파일 다운로드1
972정성태1/7/201128228개발 환경 구성: 95. SQL Server 2008 R2 이하 버전 정보 확인
971정성태1/5/201138051.NET Framework: 199. .NET 코드 - Named Pipe 닷넷 서버와 VC++ 클라이언트 제작 [2]파일 다운로드1
970정성태1/4/201138442.NET Framework: 198. 윈도우 응용 프로그램에 Facebook 로그인 연동 [1]파일 다운로드1
969정성태12/31/201044454VC++: 45. Winsock 2 Layered Service Provider - Visual Studio 2010용 프로젝트 [1]파일 다운로드1
968정성태12/30/201030645개발 환경 구성: 94. 개발자가 선택할 수 있는 윈도우에서의 네트워크 프로그래밍 기술 [2]
967정성태12/27/201032336.NET Framework: 197. .NET 코드 - 단일 Process 실행파일 다운로드1
966정성태12/26/201029812.NET Framework: 196. .NET 코드 - 창 흔드는 효과파일 다운로드1
965정성태12/25/201031983개발 환경 구성: 93. MSBuild를 이용한 닷넷 응용프로그램의 다중 어셈블리 출력 빌드파일 다운로드1
964정성태12/21/2010147996개발 환경 구성: 92. 윈도우 서버 환경에서, 최대 생성 가능한 소켓(socket) 연결 수는 얼마일까? [14]
... [166]  167  168  169  170  171  172  173  174  175  176  177  178  179  180  ...