-1

我想知道如何使用我的 C# winforms 应用程序生成 .exe 文件?

假设用户想通过我的 winforms 应用程序创建自己的应用程序。他可以在自己的应用程序中选择将自定义标题、自定义文本放入已创建的标签/文本框等。

我怎样才能做到这一点?

4

3 回答 3

1

看看Microsoft.CSharp.CSharpCodeProvider

于 2012-09-29T09:44:20.163 回答
0

如果您只需要自定义您的应用程序用户可以创建一些 xml 文件:

<title>user title</title>
<textbox name="customName"></textbox>

您可以阅读此文件并将控件添加到应用程序的某些字段中。

于 2012-09-29T09:52:07.133 回答
0

CSharpCodeProvider 的另一种替代方法是使用System.Reflection.Emit命名空间中的类,从AppDomain.DefineDynamicAssembly开始,您可以构造一个程序集,然后可以将其保存到磁盘(通过使用AssemblyBuilder.Save(string))。

如果用户只能进行一些自定义,而它们的功能是事先知道的,请使用可以定义各种选项的配置文件。使用ConfigurationManager编辑其他可执行文件的应用程序配置。

例如:

var targetConfig = ConfigurationManager.OpenExeConfiguration("MyOtherApplication.exe");
var uiOptions = targetConfig.Sections["UIOptions"];
uiOptions["TitleText"] = _titleTextBox.Text;
targetConfig.Save();

然后其他应用程序可以使用相同的键读取它:

var myUIOptions = (ConfigurationSection)ConfigurationManager.GetSection("UIOptions");
this.Caption = uiOptions["TitleText"] as string;
于 2012-09-29T09:51:56.747 回答