C#winfrom打开指定的文件

直接打开指定的文件
System.Diagnostics.Process.Start(v_OpenFilePath);
直接打开目录
string v_OpenFolderPath = @"目录路径"; System.Diagnostics.Process.Start("explorer.exe", v_OpenFolderPath);

  

在WinForm/C#中打开一个文件,主要是用到进程的知识。

下面是一些实例,可以模仿着去实现。

1.          打开文件

private void btOpenFile_Click(object sender, EventArgs e)

{

//定义一个ProcessStartInfo实例

System.Diagnostics.ProcessStartInfo info = new System.Diagnostics.ProcessStartInfo();

//设置启动进程的初始目录

info.WorkingDirectory = Application.StartupPath;

//设置启动进程的应用程序或文档名

info.FileName = @"test.txt";

//设置启动进程的参数

info.Arguments = "";

//启动由包含进程启动信息的进程资源

try

{

System.Diagnostics.Process.Start(info);

}

catch (System.ComponentModel.Win32Exception we)

{

MessageBox.Show(this, we.Message);

return;

}

}

2.          打开浏览器

private void btOpenIE_Click(object sender, EventArgs e)

{

//启动IE进程

System.Diagnostics.Process.Start("IExplore.exe");

}

3.          打开指定URL

方法一:

private void btOpenURL_Click(object sender, EventArgs e)

{

//启动带参数的IE进程

System.Diagnostics.Process.Start("IExplore.exe", "http://hi.baidu.com/qinzhiyang");

}

方法二:

private void btOpenURLwithArgs_Click(object sender, EventArgs e)

{

//定义一个ProcessStartInfo实例

System.Diagnostics.ProcessStartInfo startInfo = newSystem.Diagnostics.ProcessStartInfo("IExplore.exe");

//设置进程参数

startInfo.Arguments = " http://hi.baidu.com/qinzhiyang ";

//并且使进程界面最小化

startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Minimized;

//启动进程

System.Diagnostics.Process.Start(startInfo);

}

4.          打开文件夹

private void btOpenFolder_Click(object sender, EventArgs e)

{

//获取“收藏夹”文件路径

string myFavoritesPath = System.Environment.GetFolderPath(Environment.SpecialFolder.Favorites);

//启动进程

System.Diagnostics.Process.Start(myFavoritesPath);

}

5.          打印文件

private void PrintDoc()

{

//定义一个进程实例

System.Diagnostics.Process myProcess = new System.Diagnostics.Process();

try

{

//设置进程的参数

string myDocumentsPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal);

myProcess.StartInfo.FileName = myDocumentsPath + "\\TxtForTest.txt";

myProcess.StartInfo.Verb = "Print";

//显示txt文件的所有谓词

foreach (string v in myProcess.StartInfo.Verbs)

MessageBox.Show(v);

       

myProcess.StartInfo.CreateNoWindow = true;

//启动进程

myProcess.Start();

}

catch (Win32Exception e)

{

if (e.NativeErrorCode == ERROR_FILE_NOT_FOUND)

{

MessageBox.Show(e.Message + " Check the path." + myProcess.StartInfo.FileName);

}

else if (e.NativeErrorCode == ERROR_ACCESS_DENIED)

{

MessageBox.Show(e.Message + " You do not have permission to print this file.");

}

}

}

  

posted @ 2017-11-03 13:58  你只管努力  阅读(4712)  评论(0编辑  收藏  举报