【问题标题】:Write file to memory and get an url pointing to it将文件写入内存并获取指向它的 url
【发布时间】:2018-04-14 23:49:03
【问题描述】:

我有一个 *.exe 文件程序和一个 *.chm 帮助文件。

我已将帮助文件作为资源嵌入到我的 exe 中,现在我想打开它以便用户查看帮助。

据我所知,唯一的方法是使用 HelpProvider 类,但它只接受一个 url 作为文件的地址。所以我必须将我的资源 *.chm 文件写入某处并将其地址提供给提供者。

但是我不想将文件写入磁盘,所以我想我只需使用MemoryStrem 或其他东西并将其写入内存。但是我将如何在内存中获取该文件的 url?

【问题讨论】:

  • 为什么将文件作为资源嵌入?
  • @ChrisBint - 确实!
  • @ChrisBint,我只想拥有一个 *.exe 文件。这是一个坚定的要求。我不应该将其作为嵌入式资源吗?
  • 你可能会在你的应用程序中嵌入一个 httpserver 并让它运行,然后你可以让 /helpfile 或任何返回资源的东西,但这似乎很麻烦
  • @BugFinder,我认为嵌入 chm 就像 ShowHelp(this, Resources.MyHelpFile) 一样简单,但是,唉,我需要一个 url 来指向某个地方,我真的希望它能够记忆。

标签: c# file memory chm


【解决方案1】:

我怀疑您需要将文件保存到磁盘才能打开 .chm 文件。

一个想法可能是托管未编译的 html ,与 .chm 联机使用,然后打开浏览器查看它?浏览器可以嵌入到您的应用程序中吗? 这将允许您在需要时更新帮助内容。

【讨论】:

    最近更新 更多