DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: jeff1314
今日帖子: 10
在线用户: 5
导航: 论坛 -> 经典工具 斑竹:liumazi,ruralboy  
作者:
男 jfet (jfet) ★☆☆☆☆ -
盒子活跃会员
2021/9/25 11:28:06
标题:
C++Builder 10.X 使用 vscode 搭建开发环境 浏览:2426
加入我的收藏
楼主: CB10 的代码提示就是一个残废,即使保证了工程文件路径没有空格,工程文件保存到磁盘等,cquery 狂算半天还是可能不出现代码提示,现在实验了一个方法可以在vscode中流畅写代码和调试。
原理:CB10 本来就是改装过的clang,目录中自带 lldb-mi.exe 调试器。
假设 CB10 安装目录为 "C:\Program Files (x86)\C++Builder 10.4.2\“
1、vscode 安装 microsoft 的 C/C++ IntelliSense 插件
2、配置 "C_Cpp.intelliSenseEngine": "Tag Parser"
3、在工程文件夹中创建一个build.bat(调用msbuild编译工程文件)
  1. @echo off
  2. call "C:\Program Files (x86)\C++Builder 10.4.2\bin\rsvars.bat"
  3. cd C:\dev\demo1  这个是你的工程目录
  4. msbuild /t:make
4、创建vscode任务文件 tasks.json (执行批处理错误信息格式设置微软格式)
  1. {
  2.    "tasks": [
  3.        {
  4.          "label": "C/C++: bcc64.exe 生成活动文件",
  5.          "command": "C:\\windows\\system32\\cmd.exe",
  6.          "args": [
  7.          "/C",
  8.          "build.bat"
  9.          ],
  10.          "options": {
  11.          "cmd": "${fileDirname}"
  12.          },
  13.          "problemMatcher": [
  14.          "$msCompile"
  15.          ],
  16.          "presentation": {
  17.          "reveal": "silent"
  18.          },
  19.          "group": {
  20.          "kind": "build",
  21.          "isDefault": true
  22.          }
  23.        }
  24.    ],
  25.    "version": "2.0.0"
  26. }
5、创建调试配置 lanuch.json (使用 lldb-mi 调试)
  1. {
  2.    "version": "0.2.0",
  3.    "configurations": [
  4.        {
  5.          "name": "bcc64.exe - 生成和调试活动文件",
  6.          "type": "cppdbg",
  7.          "request": "launch",
  8.          "program": "${fileDirname}/Win64/Debug/P1.exe",
  9.          "args": [],
  10.          "stopAtEntry": false,
  11.          "cwd": "C:\\Program Files (x86)\\C++Builder 10.4.2\\bin\\windows\\lldb",
  12.          "environment": [],
  13.          "externalConsole": false,
  14.          "MIMode": "lldb",
  15.          "miDebuggerPath": "C:\\Program Files (x86)\\C++Builder 10.4.2\\bin\\windows\\lldb\\lldb-mi.exe",
  16.          "setupCommands": [
  17.          {
  18.          "description": "为 gdb 启用整齐打印",
  19.          "text": "-enable-pretty-printing",
  20.          "ignoreFailures": true
  21.          }
  22.          ],
  23.          "preLaunchTask": "C/C++: bcc64.exe 生成活动文件"
  24.        }
  25.    ]
  26. }
6、配置 c_cpp_properties.json (告诉插件头文件位置)
  1. {
  2.    "configurations": [
  3.        {
  4.          "name": "Win32",
  5.          "includePath": [
  6.          "${workspaceFolder}/**",
  7.          "C:/Program Files (x86)/C++Builder 10.4.2/include/windows/crtl/**",
  8.          "C:/Program Files (x86)/C++Builder 10.4.2/include/windows/rtl/**",
  9.          "C:/Program Files (x86)/C++Builder 10.4.2/include/windows/sdk/**",
  10.          "C:/Program Files (x86)/C++Builder 10.4.2/include/windows/vcl/**",
  11.          "C:/Program Files (x86)/C++Builder 10.4.2/include/dinkumware64/**"
  12.          ],
  13.          "defines": [
  14.          "_DEBUG"
  15.          ],
  16.          "cStandard": "c11",
  17.          "cppStandard": "c++17",
  18.          "intelliSenseMode": "windows-clang-x64",
  19.          "compilerPath": "C:/Program Files (x86)/C++Builder 10.4.2/bin/bcc64.exe"
  20.        }
  21.    ],
  22.    "version": 4
  23. }
7、敲 F5 开始 Debug
CB10 的 IDE 用来干嘛,维护工程文件,设计界面,关联事件,其余写代码和调试工作可以完全在vscode完成。
祝大家愉快:-)
----------------------------------------------
-
作者:
男 blueflag (昆了) ★☆☆☆☆ -
盒子活跃会员
2021/9/25 11:37:51
1楼: 看到精力放到这些折腾上,总是莫名的烦躁
----------------------------------------------
-
作者:
男 keymark (嬲) ▲▲▲△△ -
普通会员
2021/9/25 12:40:05
2楼: 11 lsp 可以在vscode工作
----------------------------------------------
[alias]  co = clone --recurse-submodules  up = submodule update --init --recursiveupd = pullinfo = statusrest = reset --hard懒鬼提速https://www.cctry.com/>http://qalculate.github.io/downloads.htmlhttps://www.cctry.com/
作者:
男 nevergrief (孤独骑士) ★☆☆☆☆ -
盒子活跃会员
2021/9/25 18:33:36
3楼: 佩服楼主这样能折腾,但是不喜欢楼主这种写代码的方式。现在做软件都是与界面设计强相关的,你光写代码算个什么事情呢?
----------------------------------------------
只有偏执狂才能生存!
作者:
男 jfet (jfet) ★☆☆☆☆ -
盒子活跃会员
2021/9/25 19:54:21
4楼: @nevergrief
但凡这个IDE能正常工作谁想折腾啊,我的工程压根就不出来提示,即使出来也是卡3秒以上,伤心啊
----------------------------------------------
-
作者:
男 pmdesigner (pmdesigner) ★☆☆☆☆ -
盒子活跃会员
2021/9/26 1:27:39
5楼: 楼主厉害了,竟然找到这种方法。。
----------------------------------------------
-
作者:
男 nevergrief (孤独骑士) ★☆☆☆☆ -
盒子活跃会员
2021/9/26 1:55:25
6楼: to jfet
你就再忍忍,等VA整合进去了,应该就是天下第一IDE了。
网上总吹VS是宇宙第一IDE,但我可不这么想,都已经天下第一了,还要VA干什么?有VA和没有VA,两者完全不是一回事。

另外,你也可以用旧版10.3之类的开发,最后用10.4生成一下。
----------------------------------------------
只有偏执狂才能生存!
作者:
男 wg961423 (麦子仲肥) ★☆☆☆☆ -
盒子活跃会员
2021/9/26 9:42:23
7楼: 已经习惯不开代码提示的飘过,只要不开代码提示,再也不卡了
----------------------------------------------
-
作者:
男 tiez (骑牛夜旅) ★☆☆☆☆ -
普通会员
2021/9/26 10:34:37
8楼: 有代码提示能少打几个字最好。另一个重要原因是喜欢代码提示后出来的关键字大小写全是一个标准(且和参照处的大小写一致,不一定和格式化一致),这对有点强迫症的人挺重要的。总感觉大小写不合审美的代码就不是同一段代码。
----------------------------------------------
-
作者:
男 xiaomajia52 (sun小马) ▲▲▲△△ -
普通会员
2021/9/28 14:50:07
9楼: CB的代码提示是真的垃圾,本来说好11要带上VX,结果没有,伤心
----------------------------------------------
-
作者:
男 jfet (jfet) ★☆☆☆☆ -
盒子活跃会员
2021/9/28 20:16:21
10楼: vscode 快成编辑器标准了,Delphi 11里面有一个DelphiLSP,提供了官方vscode插件,vscode里面也能愉快的写Delphi了

vscode 插件中搜索 DelphiLSP
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行78.125毫秒 RSS