C#教程

关注公众号 jb51net

关闭
首页 > 软件编程 > C#教程 > C#运行外部程序

C#运行外部程序的两种方法小结

作者:赤龙绕月

本文介绍了C#运行外部程序的两种方法,包括ShellExecute和Process,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

ShellExecute

using System.Runtime.InteropServices;

public enum ShowWindowCommands : int
{

    SW_HIDE = 0,
    SW_SHOWNORMAL = 1,    //用最近的大小和位置显示,激活
    SW_NORMAL = 1,
    SW_SHOWMINIMIZED = 2,
    SW_SHOWMAXIMIZED = 3,
    SW_MAXIMIZE = 3,
    SW_SHOWNOACTIVATE = 4,
    SW_SHOW = 5,
    SW_MINIMIZE = 6,
    SW_SHOWMINNOACTIVE = 7,
    SW_SHOWNA = 8,
    SW_RESTORE = 9,
    SW_SHOWDEFAULT = 10,
    SW_MAX = 10
}
[DllImport("shell32.dll")]
public static extern IntPtr ShellExecute(
    IntPtr hwnd,
    string lpszOp,
    string lpszFile,
    string lpszParams,
    string lpszDir,
    ShowWindowCommands FsShowCmd
);

调用

ShellExecute(IntPtr.Zero, "open", UrlOrPath, null, null, ShowWindowCommands.SW_SHOWNORMAL);

UrlOrPath可为exe路径或者网页url(使用默认浏览器打开网页url)

使用ie打开网页url

ShellExecute(NULL, "open", "IEXPLORE", "http://www.csdn.net", NULL, SW_SHOWMAXIMIZED);

Process

using System.Diagnostics;

private static string Execute(string exePath, string parameters)
{
    string result = String.Empty;

    using (Process p = new Process())
    {
        p.StartInfo.UseShellExecute = false;
        p.StartInfo.CreateNoWindow = true;
        p.StartInfo.RedirectStandardOutput = true;
        p.StartInfo.FileName = exePath;
        p.StartInfo.Arguments = parameters;
        p.Start();
        p.WaitForExit();

        result = p.StandardOutput.ReadToEnd();
    }

    return result;
}

到此这篇关于C#运行外部程序的两种方法小结的文章就介绍到这了,更多相关C#运行外部程序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文