albertziegenhagel / albertziegenhagel/childdebugger-vscode

Figure out a better way to communicate with VS Code

Đang mở
#7 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
C++
Star
20
Fork
3
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

When the VS Debug Engine extension (this repository) figures out that a child process has been launched it needs to inform the VS Code GUI part that it should attach to the newly created process.

Currently, this is implemented by abusing the `DkmUserMessage` interface. To the best of my knowledge, these user messages are indented to be used for debug messages that are to be displayed to the user. We currently intercept those user messages in the VS Code extension (the [`childdebugger-vscode` repository](https://github.com/albertziegenhagel/childdebugger-concord)) and parse all information about the child process back from the text messages, so that we can then make the VS Code GUI attach to the new process.

This is less then ideal:
- it is hard to guarantee that the to text formatting and parsing back will always work as expected.
- although these messages should be internal, they will always be displayed to the user.

Other solutions tried so far, but that didn't work:
- Using `DkmDebugProcessRequest` to make VS Code attach to the child process. Although this looks like the perfect tool for the job, it does not seem to be implemented in the VS Code incarnation of the debug engine (but only in Visual Studio's). My guess is that the reason is that VS Code starts a separate `vsdbg.exe` instance for every process it wants to debug. So anything that is internal to the current instance of the debug engine (which I assume `DkmDebugProcessRequest` is), would not work in this case.
- Similarly, `DkmCustomMessage` does not seem to be implemented for VS Code, too. It is unclear where this messages could be received.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.