c# 通过API启动外部程序

调用Win32 API。
1. using System.Runtime.InteropServices;2.
//
        //#define SW_HIDE             0 //隐藏窗口,活动状态给令一个窗口
        //#define SW_SHOWNORMAL       1 //用原来的大小和位置显示一个窗口,同时令其进入活动状态
        //#define SW_NORMAL           1
        //#define SW_SHOWMINIMIZED    2
        //#define SW_SHOWMAXIMIZED    3
        //#define SW_MAXIMIZE         3
        //#define SW_SHOWNOACTIVATE   4 //用最近的大小和位置显示一个窗口,同时不改变活动窗口
        //#define SW_SHOW             5 //用当前的大小和位置显示一个窗口,同时令其进入活动状态
        //#define SW_MINIMIZE         6 //最小化窗口,活动状态给令一个窗口
        //#define SW_SHOWMINNOACTIVE  7 //最小化一个窗口,同时不改变活动窗口
        //#define SW_SHOWNA           8 //用当前的大小和位置显示一个窗口,不改变活动窗口
        //#define SW_RESTORE          9 //与 SW_SHOWNORMAL  1 相同
        //#define SW_SHOWDEFAULT      10
        //#define SW_FORCEMINIMIZE    11
        //#define SW_MAX              11
        [DllImport("kernel32.dll")]
        public static extern int WinExec(string exeName, int operType);3.
WinExec(@"C:\WINDOWS\system32\cmd.exe",5);

______________________________
调用Win32 API。
1.
using System.Runtime.InteropServices;2.
[DllImport("shell32.dll")]
        public static extern int ShellExecute(IntPtr hwnd,StringBuilder lpszOp,StringBuilder lpszFile,StringBuilder lpszParams,StringBuilder lpszDir,int FsShowCmd);3.调用,打开记事本:
int a = ShellExecute(IntPtr.Zero,new StringBuilder("Open"),new StringBuilder("notepad"),new StringBuilder(""),new StringBuilder(@"C:\"), 1);
            System.Windows.Forms.MessageBox.Show(a.ToString());4.打开一个网页:
ShellExecute(IntPtr.Zero,new StringBuilder("Open"),new StringBuilder("http://yao.cnblogs.com"),new StringBuilder(""),new StringBuilder(""), 1);

posted @ 2009-12-18 08:17  94cool  阅读(553)  评论(0)    收藏  举报