WPF程序只生成一个Exe文件

创建一个WPF应用程序(.Net Framwork4.7),NuGet安装Prism.Wpf包,生成后Debug文件如图所示

 

 除了可执行文件Test.exe外,还有大量的引用的Dll文件、xml文件、config配置文件和pdb调试文件。有时候我们不希望看到这么多文件,只想拿到一个exe文件就能运行程序。那么我们就需要将dll、xml、config、pdb 打包到exe文件中。

1、将config文件生成操作属性设置成“嵌入的资源”。

 

2、将生成属性中,点击输出栏“高级”按钮,对话框中调试信息改为“嵌入式”。

 

 3、nuget 安装Costura.Fody包,可以将dll文件设置成为嵌入的资源。

4、xml文件的隐藏

打开Test.csproj文件,可以选择Debug和Release两个父节点中,添加

<AllowedReferenceRelatedFileExtensions>.allowedextension</AllowedReferenceRelatedFileExtensions> 

 

 最终重新生成后,Debug文件夹中只剩下exe文件。

--补充
非托管资源(c++)的类库打包

1、根目录创建创建文件夹: Costura64,如果是32位改为Costura32。

2、把需要嵌入的文件复制到该文件夹中,Costura64文件夹内的文件设置为“嵌入的资源”。

 

posted @ 2021-07-19 20:55  Gold步履不停  阅读(5975)  评论(1编辑  收藏  举报