从嵌入资源引用嵌入的资源

本文关键字:资源 嵌入资源 引用 | 更新日期: 2023-09-27 18:31:45

我正在使用WinForms浏览器控件来显示我作为资源嵌入的html文件中的一些内容,该文件工作正常。

我现在想在我的应用程序中嵌入一些脚本和样式表,但如果可能的话,我不知道如何从 html 页面引用其他嵌入文件。

我当前的解决方案是在显示之前加载资源并将它们添加到浏览器控件的文档,但如果我想使用 JQuery 之类的东西,这可能会有点混乱。

从嵌入资源引用嵌入的资源

如果脚本和样式表与 HTML 文件位于同一目录树中,则可以使用相对路径(例如 <script src="../scripts/myFoo.js" />)。 还是我错过了什么?

嵌入文件,然后在渲染之前将每个文件解压缩到临时文件夹:

string ret = ResourceUtility.GetTempFileFromEmbeddedResource(Assembly.GetExecutingAssembly(),
    "outlook.addin.a.html", "a.html");
var bsjs = ResourceUtility.GetTempFileFromEmbeddedResource(Assembly.GetExecutingAssembly(),
    "outlook.addin.bootstrap.js.bootstrap.min.js", "bootstrap.min.js");
public static string GetTempFileFromEmbeddedResource(Assembly assembly, string resourceName, string fileName)
{
    string output;
    using (Stream s = ResourceUtility.GetEmbeddedResourceStream(assembly, resourceName))
    {
        StreamReader sr = new StreamReader(s);
        output = sr.ReadToEnd();
    }
    return CreateLocalTempFile(output, fileName);
}