C#打开一个嵌入式文件(.doc,.pdf,.exe等)



我是C#的新手,并且我通常使用VB构建了Windows表单,并且能够使用一个代码打开我添加到"资源"中的任何嵌入式文件。就C#而言,我已经在网上查看了几个小时,但还没有找到任何有用的东西。请以任何方式提供帮助。

我有一个Windows表单,该表单将有一个单个按钮,该按钮将分配给我添加到" Resources"文件夹的特定文件。通常,我会使用以下代码具有 button_click 加载EXE,DOC或PDFILE。我正在寻找类似的c#。

的东西

VB代码:

IO.File.WriteAllBytes(My.Computer.FileSystem.SpecialDirectories.Temp & "IEResetConfigure.exe", My.Resources.IEResetConfigure)
Process.Start(My.Computer.FileSystem.SpecialDirectories.Temp & "IEResetConfigure.exe")

只需将您的资源文件写入临时目录并运行文件

using System;
using System.IO;
using System.Diagnostics;
// ...
    byte[] resourceFile = Properties.Resources.Newspaper_PC_13_12_2013;
    string destination = Path.Combine(Path.GetTempPath(), "Newspaper_PC_13_12_2013.pdf");
    System.IO.File.WriteAllBytes(destination, resourceFile);
    Process.Start(destination);

我的评论的示例

using System;
using System.IO;
using System.Diagnostics;
using System.Threading.Tasks;
// ...
    static void Main(string[] args)
    {
        byte[] resourceFile = Properties.Resources.Newspaper_PC_13_12_2013;
        string destination = Path.Combine(Path.GetTempPath(), "Newspaper_PC_13_12_2013.pdf");
        File.WriteAllBytes(destination, resourceFile);
        Process.Start(destination);
        AutoDelete(2000, destination);
        Console.Write("Press any key to quit . . . ");
        Console.ReadKey(true);
    }
    static async void AutoDelete(int milliseconds, string destination)
    {
        while (File.Exists(destination))
        {
            await Task.Delay(milliseconds);
            try
            {
                File.Delete(destination);
            }
            catch
            {
                continue;
            }
        }
    }

对于任何仍在寻找的人来说,这是打开"嵌入"的一种方式文件。我希望有人以更好的方式在下面纠正我。

第一部分是确保您的文件已添加到bin debug文件夹中的项目中。然后,我使用此代码称其为

    private void button1_Click(object sender, EventArgs e)
    {
        //Place file in .binDebug folder of project
        string filename = "YourFileName.pdf";
        System.Diagnostics.Process.Start(filename);

全面披露整个部分已从(通过单击按钮打开Windows表单中的.pdf文件)

然而,我确实遇到了一个问题,在第一个构建后对我不起作用的问题。因此,当我创建设置项目时,我添加了"项目输出"。然后在我的pdf中添加"添加文件"。到应用程序文件夹。

从那以后一直对我无瑕的工作。这是我在Stack Overflow上的第一篇文章,因此,请告诉我是否误解了任何规则或可以改进。谢谢,我希望这有所帮助!

最新更新