我正在创建一个WPF应用程序,只要用户点击“保存项目”,我就会保存在应用程序中输入的值。我在我的应用程序中的按钮。但是,我需要使用不同的文件扩展名保存它,以便只有我的应用程序可以打开它而不是其他文本编辑器(我不想将其保存为.txt文件)。我该怎么做?
答案 0 :(得分:0)
在一个非平凡的应用程序中,此设置通常在InstallShield或Inno Setup等安装程序软件中配置。您可以搜索配置的“文件关联”。
请快速开始,首先我们需要在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
...
}