在WPF中使用自定义文件扩展名保存文件
本文关键字:文件 扩展名 保存文件 自定义 WPF | 更新日期: 2023-09-27 18:08:38
我正在创建一个WPF应用程序,我想保存在应用程序中输入的值,每当用户单击"保存项目"按钮,我在我的应用程序。但是,我需要用不同的文件扩展名保存它,这样只有我的应用程序可以打开它,而不是其他文本编辑器(我不想将其保存为.txt文件)。我该怎么做呢?
在重要的应用程序中,此设置通常在安装软件中配置,如InstallShield或Inno setup ..您可以搜索"File Association"查看配置。
给你一个快速的开始,首先我们需要在windows注册表中注册你想要的文件关联,这样当你双击文件时,它就会启动你的应用程序。
对于下面的示例,假设。myf是你想要关联的扩展名。myapp是您的应用程序的名称,C:'myapp.exe是您的可执行文件。将其保存为批处理文件,如"registermyapp.bat"并运行它。注意:您需要复制您的wpf并将您的wpf应用程序可执行文件重命名到此路径!
reg add HKCU'SOFTWARE'Classes'.myf /v "" /t REG_SZ /d "myapp" /f
reg add HKCU'SOFTWARE'Classes'myapp'shell'open'command /v "" /t REG_SZ /d "'"C:'myapp.exe'" '"%%1'"" /f
然后在您的App.xaml
中,您需要重写OnStartup()方法以获得输入文件名。
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
var filename = e.Args[0];
// do something with .myf file
var content = File.ReadAllText(filename);//just example
...
}