如何用命令行编译WPF程序
本文关键字:WPF 程序 编译 命令行 何用 | 更新日期: 2023-09-27 18:20:13
我需要使用命令行C#编译器(即csc.exe
)编译我使用Visual Studio编写的简单WPF应用程序。
问题是错误CS0103
—编译器说在我的程序中没有CCD_ 3方法。但这是错误的,因为我添加了System.Xaml.dll。有人知道如何解决这个问题吗?
使用MSBuild生成将比使用csc.exe更容易。获取正确MSBuild的路径(MSBuild路径),因为您的计算机上可以有多个MSBuild版本,大多数情况下每个Visual Studio安装一个。
然后,只需构建您的项目文件:
msbuild YourProject.csproj /p:Configuration=Release
并且输出将在bin/Release文件夹中。
使用命令行编译构建WPF应用程序可以通过使用命令行编译器。例如,考虑一个独立的WPF应用程序,用C#编写,具有以下源代码文件:
- 应用程序定义文件(app.cs)
- 列出项目
一个窗口(mainwindow.cs).
该应用程序可以使用C#命令行编译器来构建,csc.exe,使用以下命令:
csc.exe /out:WPFApplication.exe /target:winexe app.cs mainwindow.cs /reference:"C:'Program Files'Reference Assemblies'Microsoft'Framework'v3.0'presentationframework.dll" /reference:"C:'Program Files'Reference Assemblies'Microsoft'Framework'v3.0'windowsbase.dll" /reference:"C:'Program Files'Reference Assemblies'Microsoft'Framework'v3.0'presentationcore.dll"
在本例中:
- /out参数用于指定已编译的可执行应用程序(WPFApplication.exe)的名称
- /target参数用于指定要编译的应用程序的类型(Microsoft Windows可执行文件)
- 指定了C#源代码文件(app.cs和mainwindow.cs)
- /reference参数用于标识具有源代码中使用的类型的.NET Framework 3.0程序集
虽然此应用程序由两个源代码文件组成,但命令行编译可用于构建具有更多复杂性(请参见从命令行构建(CSharp))。然而命令行编译不支持WPF的编译包含可扩展应用程序标记语言的应用程序(XAML)标记源代码文件。此外,命令行编译不够健壮,无法支持所有构建需求典型WPF应用程序所需的,包括配置管理和ClickOnce应用程序和部署清单一代支持WPF更复杂的构建需求应用程序,WPF与MSBuild集成并扩展了MSBuild。
请注意,MSBuild可能是构建更复杂解决方案的更好选择,并且它得到了大多数连续集成解决方案的开箱即用支持。
更多信息请点击此处:https://msdn.microsoft.com/en-us/library/aa970678(v=vs.85).aspx
如果您不介意开发环境,打开一个可靠的编译方法是使用:
C:>devenv HacksWinSample.sln/内部版本
参见http://archive.oreilly.com/pub/h/5186
使用这种方法,您可以很容易地看到任何问题并进行调试。