用PUSHD/POPD获得bat文件执行的路径

简介:

PUSHD/POPD是为了获得bat文件执行的路径。

这个很实用,比如我们想在程序里调用bat文件,bat文件内容如下,先安装一个windows service,然后启动它:

installutil.exe /i "MyWindowsService.exe"
net.exe start "MyWindowsService"

如果我是在做一个安装程序,我需要把这些文件包括bat文件先copy到一个安装目录,而且这个目录一般是用户自己选择的,安装程序并不知道。那我们要想让安装程序调用这个bat文件,就需要把bat文件写成这样:

PUSHD "%~dp0"  //获得bat文件执行的路径
installutil.exe /i "MyWindowsService.exe"
net.exe start "MyWindowsService"
POPD

当然,为了保险起见,我们需要把installutil.exe和net.exe(都在c:\windows\system32\)copy到和bat文件相同的目录。这是为了保证有些操作系统可能是精简版或没有这些工具,安装程序也能顺利进行。




 本文转自loose_went博客园博客,原文链接:http://www.cnblogs.com/michaelxu/archive/2011/07/07/2100249.html ,如需转载请自行联系原作者
相关文章
|
JavaScript Unix Linux
⨯ cannot execute cause=fork/exec...pnpm\bin\pnpm.cjs: %1 is not a valid Win32 application.
⨯ cannot execute cause=fork/exec...pnpm\bin\pnpm.cjs: %1 is not a valid Win32 application.
977 0
|
3月前
|
Web App开发 安全 测试技术
Playwright-MCP浏览器会话复用全解析
本文深入解析Playwright-MCP实现浏览器会话复用的核心技术,包括状态持久化(cookies/localStorage存储)和直接连接已打开浏览器实例(通过CDP协议)。通过多上下文隔离与安全机制设计,提供企业级应用场景的优化方案,帮助开发者提升测试效率并降低资源消耗。
|
6月前
|
人工智能 自然语言处理 测试技术
自然语言生成代码一键搞定!Codex CLI:OpenAI开源终端AI编程助手,代码重构+测试全自动
Codex CLI是OpenAI推出的轻量级AI编程智能体,基于自然语言指令帮助开发者高效生成代码、执行文件操作和进行版本控制,支持代码生成、重构、测试及数据库迁移等功能。
1140 0
自然语言生成代码一键搞定!Codex CLI:OpenAI开源终端AI编程助手,代码重构+测试全自动
|
6月前
|
JavaScript 前端开发 程序员
甚至用不了五分钟就能学会vscode插件开发
本文介绍了VSCode插件的开发流程,从创建项目到最终发布。首先通过安装`yo`和`generator-code`脚手架工具初始化项目,选择JavaScript语言配置基础信息。接着,在`extension.js`中实现业务逻辑,例如将中文“变量”替换为“var”。通过F5进入调试模式验证功能。完成后使用`vsce`工具进行打包,解决可能遇到的版本不兼容或README文档问题。最后生成`.vsix`文件,可通过VSCode的“从VSIX安装”加载插件,实现开发闭环。进一步可将插件发布至官方市场供更多开发者使用。
|
自然语言处理 数据中心
Scaling LLM Test-Time Compute Optimally: 一种更有效的方法
【10月更文挑战第14天】本文探讨了大型语言模型(LLMs)在测试时通过增加计算资源来提升性能的可能性。研究发现,通过优化测试时计算的分配,特别是采用基于过程的验证器搜索和自适应更新响应分布的方法,LLM可以显著提高对复杂问题的应对能力,甚至在某些情况下超越更大规模的模型。论文提出了“计算最优”策略,旨在根据问题难度自适应调整计算资源,以最大化性能提升。未来工作将聚焦于增强测试时计算缩放、快速评估问题难度及实现自我改进循环。
496 6
|
11月前
|
人工智能 自然语言处理 安全
Claude官网中文版:在国内使用claude AI的最佳选择!
Claude 是 Anthropic 公司开发的一款大型语言模型,类似于 OpenAI 的 ChatGPT 或 Google 的 Bard。它被设计成一个乐于助人 😊、诚实 🤝 且无害 😇 的 AI 助手。
|
JavaScript 前端开发 开发者
深入比较Input、Change和Blur事件:Vue与React中的行为差异解析
深入比较Input、Change和Blur事件:Vue与React中的行为差异解析
|
开发工具 git 开发者
[译] 🙏 请把 .gitattributes 加入你的项目
[译] 🙏 请把 .gitattributes 加入你的项目
[译] 🙏 请把 .gitattributes 加入你的项目
|
Unix 编译器 Go
|
测试技术 开发者 Python
pyautogui,一个超酷的 Python 库!
pyautogui,一个超酷的 Python 库!
603 4