您的位置:首页 > 编程语言 > C#

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

2012-04-18 20:19 351 查看
下面是一些实例,可以模仿着去实现。


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/crong21");
}

方法二:

private
void btOpenURLwithArgs_Click(object sender,
EventArgs e)
{
//定义一个ProcessStartInfo实例
System.Diagnostics.ProcessStartInfo startInfo =
newSystem.Diagnostics.ProcessStartInfo("IExplore.exe");
//设置进程参数
startInfo.Arguments =
" http://hi.baidu.com/crong21"; //并且使进程界面最小化
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.");

}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐