前言
现在越来越多的vibe coding工具喷涌而出,如cursor trae code buddy等 作为一个走在时代前列腺的人,也是经常去尝试这些新鲜的。同时,C++作为自己的第一语言,如果要使用这些vibe coding正常开发,那么就必须具备如下插件
- C/C++
- C/C++ Extension Pack
- CMake Tools
上面的插件都是微软的,然而微软对vscode二开的编辑器开了红灯,如果检测到你不是vscode,那么不好意思,你用不了。当然,你是可以 使用CMake Tools把CMake转成Msbuild,然后去打开Msbuild的。不过我是嫌麻烦,所以去网上找了一些方法去绕过这种限制,把这些方法记录下来留档。 步骤很简单,按照以下流程走即可
1. 切换低版本C/C++插件
这里强烈建议切换1.23.6,这是微软对二开vscode最后的仁慈,同时这个对后面的patch也更友好 到这一步,你会发现,我已经可以正常编译了,不会提示下面这个东西了
但是对于正常开发流程,还有个非常大的缺陷:
无法调试! 我一开始也以为是什么插件没装,vscode就能正常调试,最终确认是插件不支持code buddy 不过还是好人多啊,发现有个人披露了这种限制的解锁 https://gist.github.com/Ouroboros/1a1e0b9c8bcbac2a519516aa5a12a52b
2.修改插件的json文件
先找到cpptools的package.json 目录就像这样 %USERPROFILE%\.cursor\extensions\ms-vscode.cpptools-1.23.6-win32-x64\package.json
ms-vscode.cpptools-1.23.6-win32-x64这个是你刚刚在第一步回退的版本 找到如下内容 “type”: “cppvsdbg”, “label”: “C++ (Windows)”, “when”: “workspacePlatform == windows”, 删掉最后一行json即可
3.Ptach vsdbg.dll
当然,仅仅这样还不行,vsdbg.dll内部还有签名校验的逻辑,还需要patch掉这个地方 ida中搜索如下特征码: 488D159E4B0600
这个地方改成nop或者74 00都可以 铛铛铛铛!大功告成 在code buddy中成功调试 