나는 excel addin의 디버그 버전을 만들어 myaddin.xll이라고합니다. excel의 인스턴스를 열고 myaddin.xll을 추가하면 예상 된 결과가 나타납니다. 하지만 Visual Studio 환경에서 디버그를 클릭하면 myaddin.xll이 열리므로 "이 프로그램은 도스 모드 일 수 없습니다."오류가 발생합니다.Visual Studio 디버그에서 excel addin xll을로드하십시오.
다른 excel addin을 위해 내가 개발 한이 문제는 없습니다. 이 문제는이 특정 addin에 갑자기 발생합니다. "도스 모드 ..."오류는 일반적으로 뭔가 빠졌을 때 발생합니다. 분명히 addin에는 Excel이 열리기 때문에 누락 된 구성 요소가 없습니다. 하지만 Visual Studio 내에서 열려고하면 일부 구성 요소가 누락됩니다. 내 질문은 어떻게 오류를 일으키는 지 파악하고 수정하는 방법입니다.
디버그 엑셀이 열리면 "myaddin.dll 파일이 파일 확장명이 아닌 다른 형식으로 표시됩니다 ...."팝업이 나타나면 팝업창이 뜨면서 쓰레기가 튀어 나옵니다 문자를 스프레드 시트에 넣습니다.
당신은 '다른 형식' 32 비트 Excel에서 64 비트 .xll을 열 때 오류 메시지가 표시됩니다. 어쩌면 현재 프로젝트 설정이 Excel 버전과 호환되지 않는 대상 (예 : Debug64)이고 일반적으로 다른 출력 디렉토리 (예 : 디버그)에서 열 수 있습니다. – Govert
Govert, 답변 주셔서 감사합니다.하지만 문제를 파악하고 처리 과정에서 중요한 것을 배웠습니다. 이 일이 일어났습니다 : 내 xll 다른 DLL을 사용하여 (말 2.dll) 내가 env 변수에 설정 한 경로. 내가 엑셀로 xll을 떨어 뜨리면 엑셀이 2.dll의 경로를 아는 것처럼 제대로 열립니다. 비주얼 스튜디오 내에서 그것은 아마도 비주얼 스튜디오가 열렸을 때 경로를로드하기 때문에 실패했습니다. 닫지 않고 다시 열지 않으면 경로가 업데이트되지 않습니다. 결과적으로 그것이 xll을 열려고 시도 할 때 2.dll을 찾을 수 없었고 실제 빌드가 좋았지 만 실패했습니다. – user1612986