WPF调用嵌入的非.net的EXE资源文件_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > WPF调用嵌入的非.net的EXE资源文件

WPF调用嵌入的非.net的EXE资源文件

 2014/5/26 3:13:03  一 剑  博客园  我要评论(0)
  • 摘要:新建项目如packEXE,添加外部文件f.exe作为嵌入的资源,如图:添加代码:usingSystem.Reflection;//++usingSystem.IO;namespacepackEXE{///<summary>///MainWindow.xaml的交互逻辑///</summary>publicpartialclassMainWindow:Window{publicMainWindow(){InitializeComponent();//MessageBox
  • 标签:.net 文件 net 资源

新建项目如packEXE,添加外部文件f.exe作为嵌入的资源,如图:

添加代码:

using System.Reflection;//++
using System.IO;

namespace packEXE
{
    /// <summary>
    /// MainWindow.xaml 的交互逻辑
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

            //MessageBox.Show(System.IO.Path.GetFileNameWithoutExtension(System.IO.Path.GetTempFileName()));

            String projectName = Assembly.GetExecutingAssembly().GetName().Name.ToString();
            using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(projectName + ".f.exe"))
            {
                Byte[] b = new Byte[stream.Length];
                stream.Read(b, 0, b.Length);
                string s = System.IO.Path.GetTempPath()+"f.exe";
                if (File.Exists(s))
                    File.Delete(s);
                using (FileStream f = File.Create(s))
                {
                    f.Write(b, 0, b.Length);
                }
            }
        }
    }
}

然后,你就可以随意调用f.exe文件了,用完还可以删掉不留痕迹。(作者:一剑)

当然,如果你是.net的EXE文件,有更简单的方法来嵌入调用,参考“Dll嵌入到WPF中”。

发表评论
用户名: 匿名