2016-12-06 2 views
0

Visual Studio의 네이티브 C++ 디버거 (현재 VSCode가 지원하는 유일한 옵션) 대신 C++ 프로그램을 디버깅 할 수있는 Visual Studio 코드 (VSCode) 용 확장 프로그램을 작성하고 싶습니다. . 나는 Visual Studio Debugger Extensibility을 보았다. 그러나 새로운 디버그 엔진을 만들고이를 Visual Studio에서 프론트 엔드로 호출하는 방법에 대해서만 설명합니다. 내가하고 싶은 것은 그 반대입니다. Visual Studio C++ 디버그 엔진 ( 프런트 엔드)에서 VSCode로 바꾸고 싶습니다. 인터넷에 관한 문서는 어떻게 얻을 수 있습니까? 아무도 도와 줄 수 있습니까?Visual Studio 디버거를 사용하여 C++ 디버깅

답변

1

저는 VSCode 팀에 있습니다. VSCode에서 VS 디버거를 사용하려면 디버그 어댑터 확장을 작성해야합니다. Here's some documentation on getting startedhere's the complete debug adapter protocol reference. 기존의 일부 구현에

시도 모양은 시작하기 :

를 Node.js를, 또한 C++ tools for VSCode을 확인하십시오.

희망이 있습니다.


편집 - 내가 문제를 오해 보인다. 다음은 외부 응용 프로그램에서 VS C++ 디버거를 사용하는 데 대한 몇 가지 생각입니다.

제 생각에는 Visual C++에는 공용 API 또는 인터페이스가있어 외부 프로그램이 쉽게 인터페이스 할 수 있습니다. 다른 언어는 종종 외부 라이브러리를 활용하거나 문서화 된 디버거 프로토콜을 사용하여 설계 되었기 때문에 더 좋은 이야기를합니다. GDB machine interface

내 최고의 제안 프로그래밍 VS를 제어하기 위해 ( https://msdn.microsoft.com/en-us/library/envdte.debugger.aspx을)를 [비주얼 스튜디오 Env.DTE 인터페이스]를 활용하는 시도 할 수 있다는 것이다 디자인의이 종류의 좋은 예입니다. EnvDTE는 문서화가 잘되어 있지 않으며 정확하게 당신이 쓴 것이 아니지만 꽤 강력합니다.

+0

안녕하세요. VSCode의 디버그 프로토콜에 대해 알고 있고 디버그 어댑터를 작성해야한다는 것을 알고 있습니다. 문제는 디버그 어댑터가 Visual Studio의 디버그 엔진을 어떻게 호출하는지 정확히 알지 못합니다. 그게 내가 어떤 도움을 원한다는 것이다. (비주얼 스튜디오 팀에게 다소 문제가된다.) –

+0

미안하지만 나는 당신이 묻고있는 문제의 어떤 부분을 완전히 오해했다. 외부 프로그램에서 VS C++ 디버거를 사용하여 생각을 추가했습니다. 간단히 말해서 Visual C++의 경우 이것이 가능하지는 않지만 EnvDTE는 유용 할 것입니다. 다른 언어/디버거는 훨씬 더 좋은 이야기를 가지고 있습니다. –

+0

감사합니다. Matt. 그 주제에 관해 인터넷에별로 의문이 생기는 것은 당연하지 않습니다. EnvDTE 접근법을 시도해 보겠다. (비록 디버그 엔진이 아닌 Visual Studio를 자동화하기 때문에 희망이 거의 없지만). –