先交代背景:我是个Web前端开发,日常工作就是写Vue、React、Node.js,跟浏览器打交道。浏览器之外的操作系统,对我来说就像一个“黑盒”。
做了那么多年Web开发,我从来没写过一行Windows桌面程序的代码。
C#?不会。 Win32 API?听说过,没用过。 Windows消息机制?那是什么?
但上个月,因为工作需要——我要同时管理20多个交易软件(迅投、快期、券商客户端……),每天早上登录就要花15分钟——我决定尝试用AI来“写”一个Windows桌面自动化工具。
结果让我自己都震惊了。
说实话,我写过的代码少说也有十几万行了。在Web领域,我不敢说精通,但至少算个熟手。
但面对Windows桌面开发,我的知识储备几乎是零:
我甚至不知道“UI Automation”这个词。
这种感觉很奇怪——明明每天都在写代码,但换了一个赛道,突然就变成了“小白”。
如果是以前,我可能会这样做:
但我不想等一个月。
而且说实话,我也不想花时间去学那些我可能只用一次的技术——我的主业是Web,我不想为了一个工具“转行”。
于是我想:能不能让AI帮我写这些我不懂的部分?我只负责架构和整合?
事实证明,完全可以。
我的第一个问题是:“用Python写一个Windows系统托盘应用,支持全局热键。”
AI给出了完整的代码,用了pystray做托盘、keyboard做热键。
我复制、运行。
一个图标出现在右下角。
右键有菜单,按Ctrl+Alt+1有反应。
说实话,那一瞬间我很兴奋。 不是因为代码有多难——这段代码放Web领域,我闭着眼睛都能写——而是因为它跑在“我不熟悉的世界”里,而且跑通了。
AI帮我跨过的第一个坎,不是技术难度,而是心理门槛。它证明了:我不需要懂Win32,也能写出Win32程序。
核心功能:启动一个外部程序(比如“长城证券交易端”),等它加载完,找到账号输入框、密码输入框,填进去,再点登录按钮。
这涉及几个我从没接触过的东西:
我把需求拆开,一个一个问AI:
“怎么用Python启动一个exe,并等待它的窗口出现?”
AI给了subprocess.Popen + pywinauto的示例。
“怎么通过窗口标题找到对应的窗口?”
AI给了Application(backend="uia").connect(title="xxx")。
“怎么往文本框里填内容?”
AI给了window.Edit.type_keys("账号")。
每个问题,AI都给出了可运行的代码。我只需要把它们拼起来。
最让我意外的是:AI不仅给了代码,还会主动提醒我一些“我不知道我不知道”的事情。
比如我让它写“点登录按钮”,它除了生成点击代码,还会提醒我:登录后可能需要等待主界面出现、可能需要关闭公告弹窗、可能需要处理登录失败的提示……
这些东西,如果我自己去踩坑,可能要好几天才能全部遇到。
最后一步:把Python脚本打包成.exe,让同事也能用——他们不可能装Python环境。
这又是一个我不熟悉的领域。
我问AI:“怎么打包成单个exe文件,带图标,不显示控制台窗口?”
AI给了PyInstaller的完整命令,还教我写build.spec配置文件,甚至告诉我去哪里下载UPX来压缩体积。
打包成功的那一刻,我双击生成的KeyboardGenie.exe——
一个独立的、有图标的、装在系统托盘的Windows软件,出现在我的桌面上。
我,一个Web前端,做出了一个Windows桌面软件。
作为一个有编程基础的人,我用AI做这个工具时,感受和纯小白完全不同。
我的优势在于:
我的劣势在于: https://drive.google.com/file/d/1SQrVZi3GDClMqcCHHmKNqWRmUj7pLwKS/view?usp=sharing
AI帮我填平的,不是“编程能力”的鸿沟,而是“领域知识”的鸿沟。
有人说“AI让编程变得不值钱”,我不这么认为。
AI降低了“写代码”的门槛,但“拆解需求”、“设计架构”、“判断什么方案更合适”这些能力,依然值钱。
在这个项目里,我虽然一行核心代码都没写,但以下工作是我做的:
AI负责“怎么写”,我负责“写什么”和“为什么这么写”。
对我来说,AI最大的价值不是“帮我写代码”,而是把Windows领域的概念翻译成我能听懂的语言。
我问:“怎么找窗口?”AI不直接扔代码,而是解释:Windows里每个窗口都有标题和类名,可以用find_window根据这些信息去找。
这个“翻译”过程,帮我快速建立了心智模型。
Web开发转Windows开发,以前是个很大的跨度。你要学的东西太多,以至于很多人直接放弃。
但AI把这个跨度缩小了。
你不需要成为Windows专家,你只需要知道“我要做什么”,AI帮你填充中间的空白。
AI让我可以在“保持主业不变”的前提下,快速进入另一个领域,解决实际问题。
说实话,它还不完美。
但它在持续改进。
每次遇到新问题,我就去问AI:“如果窗口没出现怎么办?”“如果账号密码填错了怎么重试?”
AI给出方案,我集成进去。
这就像有了一个24小时在线的、耐心的、知识渊博的导师。 而且这个导师从不嫌弃你问的问题“太基础”。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。