API之路1

    技术2022-05-20  55

    今天又学会了几个API,总结如下:

    1.ShellExecute,这个函数在#include <shellapi.h>中

    原型如下:(参考百度百科)

    ShellExecute(

      hWnd: HWND; {指定父窗口句柄}

      Operation: PChar; {指定动作, 譬如: open、print}

      FileName: PChar; {指定要打开的文件或程序}

      Parameters: PChar; {给要打开的程序指定参数; 如果打开的是文件这里应该是 nil}

      Directory: PChar; {缺省目录}

      ShowCmd: Integer {打开选项}

      ): HINST; {执行成功会返回应用程序句柄; 如果这个值 <= 32, 表示执行错误}

      //返回值可能的错误有: = 0 {内存不足}

      ERROR_FILE_NOT_FOUND = 2; {文件名错误}

      ERROR_PATH_NOT_FOUND = 3; {路径名错误}

      ERROR_BAD_FORMAT = 11; {EXE 文件无效}

      SE_ERR_SHARE = 26; {发生共享错误}

      SE_ERR_ASSOCINCOMPLETE = 27; {文件名不完全或无效}

      SE_ERR_DDETIMEOUT = 28; {超时}

      SE_ERR_DDEFAIL = 29; {DDE 事务失败}

      SE_ERR_DDEBUSY = 30; {正在处理其他 DDE 事务而不能完成该 DDE 事务}

      SE_ERR_NOASSOC = 31; {没有相关联的应用程序}

      //ShowCmd 参数可选值:SW_HIDE = 0; {隐藏}

      SW_SHOWNORMAL = 1; {用最近的大小和位置显示, 激活}

      SW_NORMAL = 1; {同 SW_SHOWNORMAL}

      SW_SHOWMINIMIZED = 2; {最小化, 激活}

      SW_SHOWMAXIMIZED = 3; {最大化, 激活}

      SW_MAXIMIZE = 3; {同 SW_SHOWMAXIMIZED}

      SW_SHOWNOACTIVATE = 4; {用最近的大小和位置显示, 不激活}

      SW_SHOW = 5; {同 SW_SHOWNORMAL}

      SW_MINIMIZE = 6; {最小化, 不激活}

      SW_SHOWMINNOACTIVE = 7; {同 SW_MINIMIZE}

      SW_SHOWNA = 8; {同 SW_SHOWNOACTIVATE}

      SW_RESTORE = 9; {同 SW_SHOWNORMAL}

      SW_SHOWDEFAULT = 10; {同 SW_SHOWNORMAL}

      SW_MAX = 10; {同 SW_SHOWNORMAL}

    例如我们要打开一个可执行文件,执行名为filename,则定义如下:

    ShellExecute(hwnd, "open", FileName,0,0, SW_SHOWDEFAULT);

    如果将FileName参数设置为“http:”协议格式,那么该函数将打开默认浏览器并链接到指定的URL地址。若用户机器中安装了多个浏览器,则该函数将根据Windows 9x/NT注册表中http协议处理程序(Protocols Handler)的设置确定启动哪个浏览器。

    格式一:http://网站域名。

      如:ShellExecute(Handle, "open", "http:// ;

      www.neu.edu.cn", NULL, NULL, SW_SHOWNORMAL);

     

    讨论:CreateProcess...

     

     


    最新回复(0)