【问题标题】:Launch process (exe file) from resources从资源启动进程(exe 文件)
【发布时间】:2012-03-11 00:10:21
【问题描述】:

我有一个已编译的 exe 文件,用于转换图像。 它被命名为convert.exe。 我想在我的 C# 应用程序中使用它,而不是在我的应用程序文件夹中可见。 所以我想我可以将它添加为资源。 问题是: 如何启动存储在我的资源中的 exe 文件的外部进程?

【问题讨论】:

  • 先将其写入文件可以吗?因为直接从内存中运行东西很棘手,而且通常毫无意义。
  • 我想避免将其写入文件。我不希望任何人访问/复制它。
  • 不只是病毒扫描程序和用户绝对讨厌有一个不知从何而来的进程。 Windows 也有一个核心要求,即进程必须从磁盘上的文件启动。对其设计方式至关重要。
  • 阅读这篇文章,这是同一个问题:stackoverflow.com/questions/9555679/…

标签: c# process resources


【解决方案1】:

不幸的是,Hans Passant 所说的无法反驳。实际上,为了运行它,您必须首先将其保存到磁盘。有几个应用程序使用这种方法。其中之一是 SysInternals Process Explorer。它曾经在资源中包含 64 版本的 EXE(我不是 100% 确定他们在最新版本中仍然这样做)。无论如何,网上都有几个例子和教程。 Here is one.

【讨论】:

    【解决方案2】:

    如果您在程序中实现某种网络服务器(利用 http.sys),则可以从解析(通过windwows webdav 客户端)到 url 的 unc 路径运行可执行文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-08
      • 2021-03-30
      • 2013-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多