Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在Windows程序中打开嵌入式文件_C#_Embed_Revit Api - Fatal编程技术网

C# 在Windows程序中打开嵌入式文件

C# 在Windows程序中打开嵌入式文件,c#,embed,revit-api,C#,Embed,Revit Api,我在我的C#程序中的资源上放了一个文件。我试图在一个特定的应用程序中打开它,但我不知道如何打开 我完全明白这一点: 这是: 我需要打开Revit.exe中嵌入资源的“TEST.rvt”(Autodesk Revit文件) 我不想将文件复制到我的系统中,因此无法设置复制到输出目录选项 可能吗 我没有Revit,因此我不知道这是否可行。但是如果不设置Copy to Output Directory,以下内容似乎适用于记事本中的.txt文件 string textFile=Properties.Res

我在我的C#程序中的资源上放了一个文件。我试图在一个特定的应用程序中打开它,但我不知道如何打开

我完全明白这一点:

这是:

我需要打开Revit.exe中嵌入资源的“TEST.rvt”(Autodesk Revit文件)

我不想将文件复制到我的系统中,因此无法设置
复制到输出目录
选项

可能吗


我没有Revit,因此我不知道这是否可行。但是如果不设置
Copy to Output Directory
,以下内容似乎适用于记事本中的
.txt
文件

string textFile=Properties.Resources.Testfile;
流程=新流程();
process.StartInfo.FileName=“Notepad.exe”//将其设置为Revit.exe或任何名称
process.StartInfo.Arguments=textFile;
process.Start();
Properties.Resources.Testfile
是项目中嵌入的
.txt
文件


我不知道
.rvt
文件是什么样子的,所以我不知道这是否能正常工作。

因为我可以在互联网上的许多线程上阅读,这似乎是不可能的。我将在临时文件夹中复制我的.rvt,并在使用它们之前将其删除


要复制它们,我使用

中的解决方案,您想如何打开它?看到文件的内容了吗?是否使用Revit打开它?你想用它做什么?用Revit打开它是的。好吧,检查这个问题:它不适用于嵌入文件。也许有帮助,即使它的PDF.rvt似乎是一个字节[],所以它不会工作:/return me“找不到指定的文件”,正如你所看到的,我认为从字节[]转换为字符串是一个坏主意:)作为测试,不执行
File.writealBytes(Properties.Resources.TEST,Encoding.Unicode.GetBytes(Properties.Resources.TEST))在执行
过程之前先工作
吗?我认为它确实覆盖了文件的思想:,也许
Unicode
在这里也不是最好的主意。也许我可以只给一个字节[]而不是字符串。Revit.exe可能可以理解这种类型的参数,而不是字符串。我也在尝试你的解决方案。我尝试了你的解决方案,但不起作用。