c# - 如何在 PC 的默认文本编辑软件(不是默认关联的应用程序)中打开文件?
问题描述
在 C# 中工作,我想在默认文本编辑程序中启动一个进程并打开一个文件,这不一定是该文件类型的默认程序关联。
例如,假设我想打开一个 html 文件。该文件的默认关联可能是 firefox。如何在默认文本编辑器(例如记事本、记事本++等)中打开它?
谢谢你的帮助。
编辑:下面的评论说没有办法设置默认的文本编辑程序。很好,有没有办法假装文件是txt文件?
解决方案
它在注册表中:
string edit = (string)Registry.GetValue(@"HKEY_CLASSES_ROOT\SystemFileAssociations\text\shell\edit\command", null, null);
edit = edit.Replace("%1", @"c:\temp.txt");
Process.Start("cmd.exe", "/c " + edit);
这将调用它在您右键单击->编辑文本文件而不是右键单击->打开时使用的命令
推荐阅读
- python - SAML 未能验证签名
- php - WooCommerce API 获取用户信息
- android - 转换 YUV byte[] 以在 WebRTC 中使用
- c# - 如何从 Xamarin Forms 中的 webview 拦截“重定向 URL”
- javascript - useState 未显示中间步骤
- apache-kafka - Kafka 多租户消费者
- python - CSS 选择器在浏览器控制台中有效,但在 Python 中无效
- swift - 在 tableview 中对动态部分进行排序 | 迅速
- python - 当我开始循环时,循环得到 0,0,1,2,3.. 而不是 0,1,2,3
- html - Bootstrap 使所有列等于最大 col-auto 宽度