4

我在我的网络服务器上使用 IIS 7.5,我正在创建一个发布到该服务器的 C# WPF 程序,以便人们可以下载该程序。

现在,人们使用http://.../Software/Shapeshifter/Setup.exe

但是,我希望杂志等的编辑能够制作我的节目的品牌副本,以便他们可以选择品牌。

例如这个链接: http://.../Software/Shapeshifter/Setup.exe?brandName=test&brandImage=http://uriToImage.example.com

然后在启动时从我的程序中读取它,以正确标记应用程序。

目前我正在使用 ClickOnce 来执行此操作,因为它允许 Web 调用此类参数。但是,它只能在 Internet Explorer 中正常工作。

我一直在考虑以下方案来解决它:

  1. 制作一个 .EXE 文件 HttpHandler。
  2. 请求 .EXE 文件时,请检查参数。
  3. 以某种方式将参数嵌入到 .EXE 文件中(我该怎么做?)
  4. 从应用程序中读取参数(同样,我该怎么做?)

为了让这一切变得更简单,假设我的程序是单个 .EXE 文件,而 Setup.exe 实际上是程序的可执行文件本身,没有任何包装安装程序(即使情况并非如此)。

有什么建议么?

4

1 回答 1

1

老实说,我会首先在 EXE 中编译一个巨大的字符串资源,可以很容易地识别(非常特定的 HEX 组合),将 EXE 作为二进制文件打开,搜索这个位置并将任何数据放在那里。不完全漂亮,但应该工作。

但是在网上深入挖掘之后,我终于找到了一个资源编辑器,它既免费又支持从命令行执行。

该工具是资源黑客。命令行用法在教程中有描述(搜索“Using Scripts in Resource Hacker”)

于 2012-10-30T18:08:12.407 回答