手把手教你用TotalCommander辅助做航电开发

2023-10-27 21:40

本文主要是介绍手把手教你用TotalCommander辅助做航电开发,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

手把手教你用 TC 辅助做航电开发

我们亲爱的飞友读者朋友们大概都知道我和自己俩个人喜欢玩 Linux,从之前的很多片推送文章都能看出来,用 Linux 做桌面使用、做开发机器使用、做服务器使用……做桌面用可以有 OnlyOffice 办公软件完全替代微软 Office,做开发机器用可以开发飞行模拟软件 FlightGear,做服务器可以架设 OnlyOffice 服务器架设离岸 V2UI 私人飞机场服务……

但其实我和自己也还是用 Windows 系统的,比如使用施蒂姆理财平台

施蒂姆理财平台

比如使用 Vaps XT 开发真实飞机实际装备的嵌入式航电仪表程序,这个软件仅支持 Windows 操作系统,以此为上位机,安装 VXWorks 嵌入式开发环境,通过 rs232 串口、网口连接嵌入式下位机,开发调试真机航电。

用惯了 Linux 的自己,对 Windows 的 explorer 这个 exe 十分的苦恼,所以,在水木清华 BBS 社区的 Desktop 版面和 Newsoft 版面,自己和我俩个人致力于推广 BBlean+TotalCommander 的食用方式,自命为水木 BT 党,BBlean+TotalCommmander 的简称,意思是使用 BBlean 替换 explorer 作为 windows 系统的桌面窗口 GUI 渲染外壳 Shell 程序,

bblean 菜单中加入命令提示符、cygwin 以及杀死比尔icon-default.png?t=M666https://mp.weixin.qq.com/s?__biz=MzI2MjUyNzkyNw==&mid=2247487717&idx=1&sn=3545b93a88c893a613b6a26a624bb748&chksm=ea489e3ddd3f172b9ab4c2aa0f1b51186e131f2a3f67acc127bd84d20f079ebb248aa0bad771#rd

使用 TotalCommander 替换 explorer 作为 Windows 系统的资源管理器程序,管理自己的文件,这样 windows 系统从启动到关机的全过程,在任务管理器中根本不会出现 explorer.exe 这个进程,费这么大劲干掉这个进程图什么?很多专门为 windows 系统编写的病毒流氓程序,都是感染系统后依赖于该进程来发作症状的,干掉这个进程不一定能预防感染,但是肯定能让大部分病毒流氓软件无从发病,系统运行更加流畅。

TotalCommander 作为文件管理器有很强大的扩展开发能力,可以方便的与 XT、VC、VXW 集成。

完整版自定义工具栏

如上图所示,经过长期使用过程中的逐渐增加扩展,我的 TC 最终增加了整整一行的自定义工具栏按钮。

先在原工具栏的基础上增加一个使用者自定义的空白的工具栏一行,在原工具栏上右键单击,弹出右键菜单只有一个选择项更改工具栏:

原工具栏上右键单击更改工具栏

然后选择左侧第一个按钮,就是 TC 自带的子工具栏示例的定义配置,仔细观察其配置方式:

子工具栏示例

其真实配置文件是 UserApps.bar,在 TC 的安装路径下,于是找到它,复制一份,修改文件名,为自己的工具栏起名字,比如我的是 VapsXTDeveloper.bar,内容先不用改

复制方式新建.bar文件

这样就可以在 TC 的工具栏上添加这个新建的子工具栏了

添加子工具栏

在自定义工具栏窗口中,选中最右侧一个按钮,点击左侧的 添加(A),添加一个空白按钮,将上面的自带子工具栏定义所使用的图标文件路径拷贝到这里的图标文件中,会自动解析出来一系列自带图标,选择其中的子工具栏图标,然后在 命令一行的右侧的按钮 改变中,选择最下面一条 添加子工具栏,在打开文件对话框中选择新建的子工具栏文件 VapsXTDeveloper.bar,即可把 TC 的 UserApps子工具栏原样复制到新的 VapsXT 工具栏里,点进去新建的 VapsXT 工具栏里面,把 UserApps 里的所有按钮删掉清空,开始添加自己的各个工具的各种使用功能。

代码编辑功能

使用 NotePad++打开源代码文件编辑

NotePad++

鼠标移动上去会自动弹出文字提示,配置方式如下:

NotePad++配置

参数栏填写 %N,意思是在当前 TC 窗口内选中的文件,用 notepad++打开所选中的文件

打开效果

自动调用 notepad++软件打开代码文件开始编程

使用 Gvim 打开源代码文件编辑

用惯了 Linux 的 VI 编辑器,在 windows 下自己也经常用,于是加入 Windows 版本 GVim 的调用按钮,尤其是常用的代码比较功能:

Gvim

两个按钮的配置分别如下

用GVIM打开

代码比较

代码比较的命令是 gvimdiff,参数是比较的两个文件名,在 TC 里面给一个命令输入左右两侧面板分别选中的两个文件的文件名的方式就是参数 %P%N %T%M,在按钮提示处用中文输入代码比较,图标换一个和默认的不一样的有区分度的图标

VimDiff

我比较的这两个文件是完全相同的。

用 VS 2008 Express 里的 VC 打开

当然在 windows 下面最正统的开发集成环境 IDE 还是微软自己的 Visual Studio

VC2008

配置方式很简单,找到它的可执行文件 vcexpress.exe填入即可,连图标也在这个文件里,参数同样是 %N,打卡当前选中的文件,可以是 .cpp源码文件也可以是 .sln工程文件

vcexpress

航电可执行文件运行功能

XT 编译出的仪表可执行文件,固然可以双击运行,但是一般的还是要在命令行里面加一些参数指定其运行方式,比如指定窗口位置大小、指定是否可拖动等等,这些配置可以做成一个一个按钮,加入 TC 工具栏,就可以在 TC 中选择相应 exe 后直接点击按钮就可以按照指定方式运行,自己仅仅加了两个按钮:

无框运行按钮

全屏运行按钮

无框运行就是没有 windows 窗体,没有标题栏没有最大化最小化关闭按钮,不能鼠标拖动窗口位置不能鼠标拖动四个角缩放窗口大小,如下图所示

无框运行计算尺仪表

全屏运行也还是没有 windows 窗体,仪表最大化铺满整个桌面,没有标题栏没有最大化最小化关闭按钮,就像大部分电脑游戏运行的效果一样,如下图所示

全屏运行简单态势地图仪表

这两个按钮配置如下:

无框运行按钮配置

全屏运行按钮配置

图标文件都是直接从 XT 可执行文件中提取,参数 %P%N意思为执行当前 TC 窗口中选中的文件的路径名加文件名,最关键的是自己写了两个 .bat批处理程序来传入无框运行和全屏运行的参数

vapsexecutext.bat

@ rem vapsexecutext.bat
start %1 -xpos 330 -ypos 34 -fit -width 700 -height 700 -noborder

vapsexecutextfull.bat

@ rem vapsexecutextfull.bat
start %1 -xpos 0 -ypos 0 -fit -width 1360 -height 768 -noborder

自己的显示器分辨率只有 1360*768,所以这两个脚本传入的分辨率、xy 坐标都比较凄惨。

%1.bat程序传入参数的引入方法,这个程序传入只有一个参数,就是一个字符串,内容是完整的路径名加可执行文件名,就是 TC 里面的 %P%N,这个程序写得非常简化,所以限制了用法,使用时,XT 可执行路径文件名字符串中间不能有空格存在,否则程序会只解析到第一个空格之前的第一个字符串,就会执行出错。

-width-height是指定仪表画面的宽和高,单位不是什么厘米或者毫米而是像素,像素是什么东西?Windows 系统的显示设置里面屏幕分斌率就是指横方向多少像素竖方向多少像素,比如自己的这台笔记本电脑是 1360*768 像素的,自己为什么还在用这么低分辨率的老电脑呢,因为我给它改装加了触摸屏,开发调试自己的触摸屏仪表用

-xpos-ypos是指定仪表画面的位置,x 和 y 是从 Windows 的主显示器的左下角为零点的横纵坐标,上面的无框运行脚本中的数值,就是以桌面正中间为中心绘制 700 像素高宽的方形仪表区域

-fit是把设计的仪表画面缩放适合窗口大小,我在 XT 里面设计的仪表的尺寸可能很小也可能很大,直接显示就可能看起来太小或者仪表太大被窗口截断,所以加入了 -fit参数,类似的还有 -center参数,将设计的仪表的几何中心对准运行窗口的几何中心,否则程序将仅仅把设计仪表的画布的坐标零点放置在窗口的左下角,如果你设计仪表时候把仪表放置在画布坐标零点的左下方的话,那执行出来就会正好不给显示出仪表来。

-noborder参数去掉窗口的窗体界面 GUI 功能,没有最大化最小化按钮,不能手动调窗口大小,不加这个参数就可以像正常窗口一样操作了,不加这个参数配合 -fit参数可以缩放窗口时候缩放仪表大小。

编译链接可执行文件功能

上面只是运行可执行文件的功能,那在之前有一个环节就是编译链接可执行文件的操作:

cgmakewogl按钮

cgmakewogld按钮

配置如下,这里的 cg_make.bat批处理程序是 XT 安装后提供的自带的编译工具脚本程序,因此在参数栏内填写的参数是其特有的

cgmakewogl配置

cgmakewogld配置

-tgt是指编译目标类型,wogl是 windows 平台下的 OpenGl 底层编译的类型,而 wogl_d则是对应的 debug 带有调试信息可供调试的版本,-vsvars32是编译为 32 位可执行文件。

cg_make.bat编译脚本很长,截图部分代码如下

cg_make.bat

数百行代码,一般情况下不需要研究如何修改,只是用它来调用底层的 VC 和 VXWorks 开发编译环境而已

VC Express 的编译相关按钮

在 TC 里后台调用 VC 执行编译各种操作,从 C++代码生成编译按钮开始到

VapsXTC++makeCodeGen

到编译为静态链接库各种功能

VapsXTC++makeStaticOGLWithExports

这里使用的不是盗版破解版本的 VS,而是强烈推荐使用从微软官方网站下载的正版的免费版本 VS 2008 Express 版本,Express 版本的 VC 是官方免费的,足够使用,这一组按钮就是在前端 TC 界面中配置按钮调用 VC 后端的各个编译工具进行操作,命令参数都是 VC 的参数,含义不再解释,相关信息网上浩如烟海。

Vaps XT C++ make CodeGen

配置如下

VapsXTC++makeCodeGen配置

Vaps XT C++ make release

配置如下

VapsXTC++makeRelease配置

Vaps XT C++ make StaticOGL

配置如下

VapsXTC++makeStaticOGL配置

Vaps XT C++ make StaticOGLDebug

配置如下

VapsXTC++makeStaticOGLDebug配置

Vaps XT C++ make StaticOGLDebugWithExports

配置如下

VapsXTC++makeStaticOGLDebugWithExports配置

Vaps XT C++ make StaticOGLWithExports

配置如下

VapsXTC++makeStaticOGLWithExports配置

VXWorks 编译调试相关

wftpd32

wftpd32按钮

这是上位机和下位机文件传输时候使用的经典工具,一边开启 ftp 文件服务,一边用 ftp 客户端软件登陆上传下载文件

wftpd32按钮配置

tftpd32

tftpd32按钮

类似的一个工具

tftpd32按钮配置

wrwb-x86-win32

打开 VXWorks 的 IDE 开发集成环境 WindRiver WorkBench

wrwb-x86-win32按钮配置

WorkBench

Vaps XT


 


这样就基本上就把 VapsXT 进行航电开发所需要的 Visual Studio Express、VXWorks WorkBench 等都集成到 TC 里面打开了,不再需要从 windows 的开始菜单单独打开这些工具链了,不用 windows 开始菜单了就可以彻底使用 BBlean+TC 来做 shell 了,

taskkill /f /im explorer.exe
taskkill /f /im iexplorer.exe

这篇关于手把手教你用TotalCommander辅助做航电开发的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/288573

相关文章

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

手把手教你idea中创建一个javaweb(webapp)项目详细图文教程

《手把手教你idea中创建一个javaweb(webapp)项目详细图文教程》:本文主要介绍如何使用IntelliJIDEA创建一个Maven项目,并配置Tomcat服务器进行运行,过程包括创建... 1.启动idea2.创建项目模板点击项目-新建项目-选择maven,显示如下页面输入项目名称,选择

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

C#图表开发之Chart详解

《C#图表开发之Chart详解》C#中的Chart控件用于开发图表功能,具有Series和ChartArea两个重要属性,Series属性是SeriesCollection类型,包含多个Series对... 目录OverviChina编程ewSeries类总结OverviewC#中,开发图表功能的控件是Char

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof