windows上通过自定义后缀文件启动Unity应用
好吧,一个Unity应用并不常见的需求。。
两个步骤
1.关联注册表
2.把自定义后缀文件作为启动参数传给Unity做处理
1.关联注册表 (.XXXX是自定义后缀)
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Classes\.XXXX] //首先为希望注册的扩展名,新建一个Key
[HKEY_CURRENT_USER\Software\Classes\.XXXX\shell] //然后再新建一个shell的Key
[HKEY_CURRENT_USER\Software\Classes\.XXXX\shell\open] //然后再新建一个open的Key(open对应了打开操作)
[HKEY_CURRENT_USER\Software\Classes\.XXXX\shell\open\command] //然后再新建一个command的Key
@="D:\\XX\\XXX.exe %1" //为command这个Key默认设置为你的自定义应用程序,其中的%1是一个占位符,表示当前的文件路径。
通过代码修改:
using Microsoft.Win32; namespace ConsoleApplication1 { class Program { static void Main(string[] args) {
string str = this.GetType().Assembly.Location;//通过这个方法获取当前exe的路径 Registry.SetValue(@"HKEY_CURRENT_USER\Software\Classes\.XXXX\shell\open\command", "", str+" %1"); } } }
感谢:https://www.cnblogs.com/chenxizhang/p/3256692.html
2.获取启动参数,数组里第二个参数是启动传入参数
string[] CommandLineArgs = Environment.GetCommandLineArgs(); string arg = CommandLineArgs[1];
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】