是否可以在不调用命令行的情况下使用默认程序打开文件?我想运行一个单元测试并让单元测试在完成后打开文件(PDF)以进行目视检查。
答案 0 :(得分:6)
只需致电Process.Start(filePath)
这将在用户的默认程序中打开该文件。
答案 1 :(得分:2)
我认为这应该有效:
System.Diagnostics.Process.Start(@"c:\file.pdf"); //i.e provide the full path!
答案 2 :(得分:2)
只需使用以下语法:
System.Diagnostics.Process.Start(@"c:\yourfile.txt");
答案 3 :(得分:0)
Process process = new System.Diagnostics.Process();
process.EnableRaisingEvents = false;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.FileName = filePath;
string arguments = fileArguments;
process.StartInfo.Arguments = fileArguments;
process.Start();
process.WaitForExit();
通过这种方式,您可以使用参数/参数调用文件名并将其放在pdf中。您还可以指定不同的程序并将其放在路径中,然后在fileArguments中指定pdf名称。这取决于你。
答案 4 :(得分:0)
如果您使用此代码:
System.Diagnostics.Process.Start( "C:\...\...\myfile.pdf" );
pdf应该由与.pdf扩展名相关联的默认程序打开。
这是你想要的吗?我会小心地把它放在单元测试中,以防你在服务器上自动构建中包含那些测试,该服务器在没有登录用户的情况下运行,如果它失败并且如果它没有失败则可能是一个问题,谁是有关闭Acrobat Reader? :d