首页建站shellexecuteex(Shellexecuteex怎么用)

shellexecuteex(Shellexecuteex怎么用)

编程之家2024-04-0418次浏览

一、ShellExecuteEx 如何修改窗口标题

1.函数功能:

shellexecuteex(Shellexecuteex怎么用)

你可以给它任何文件的名字,它都能识别出来并打开它。

2.函数原型:

HINSTANCE ShellExecute(

HWND hwnd,

LPCTSTR lpOperation,

LPCTSTR lpFile,

shellexecuteex(Shellexecuteex怎么用)

LPCTSTR lpParameters,

LPCTSTR lpDirectory,

INT nShowCmd

);

3.参数说明:

hwnd:

shellexecuteex(Shellexecuteex怎么用)

用于指定父窗口句柄。当函数调用过程出现错误时,它将作为Windows消息窗口的父窗口。

lpOperation:

用于指定要进行的操作。

“open”操作表示执行由lpFile参数指定的程序,或打开由lpFile参数指定的文件或文件夹;

“print”操作表示打印由lpFile参数指定的文件;

“explore”操作表示浏览由lpFile参数指定的文件夹。

当参数设为NULL时,表示执行默认操作“open”。

lpFile:

用于指定要打开的文件名、要执行的程序文件名或要浏览的文件夹名。

lpParameters:

若lpFile参数是一个可执行程序,则此参数指定命令行参数,否则此参数应为NULL.

lpDirectory:

用于指定默认目录.

nShowCmd:

若lpFile参数是一个可执行程序,则此参数指定程序窗口的初始显示方式,否则此参数应设置为0。

这个参数常用的常数:

SW_HIDE隐藏窗口,活动状态给令一个窗口

SW_MINIMIZE最小化窗口,活动状态给令一个窗口

SW_RESTORE用原来的大小和位置显示一个窗口,同时令其进入活动状态

SW_SHOW用当前的大小和位置显示一个窗口,同时令其进入活动状态

SW_SHOWMAXIMIZED最大化窗口,并将其激活

SW_SHOWMINIMIZED最小化窗口,并将其激活

SW_SHOWMINNOACTIVE最小化一个窗口,同时不改变活动窗口

SW_SHOWNA用当前的大小和位置显示一个窗口,不改变活动窗口

SW_SHOWNOACTIVATE用最近的大小和位置显示一个窗口,同时不改变活动窗口

SW_SHOWNORMAL与SW_RESTORE相同

若ShellExecute函数调用成功,则返回值为被执行程序的实例句柄。若返回值小于32,则表示出现错误。

SW_HIDE隐藏窗口,活动状态给另一个窗口

SW_MINI

二、ShellExecuteEx 失败 代码 2 系统找不到指定文件

右键点安装程序。选择以管理员身份运行。如果还不行就关闭杀毒软件,

继续安装游戏,然后将游戏的主程序设为可信任,再开杀毒软件进行游戏,如果

不会设置玩游戏的时候关闭杀毒软件,如果一旦误杀,就请关闭防毒软件重新安装。

安装程序在下载的时候缺损了某个文件夹,得重新下载安装文件,卸载后重装即可,还有个极小的可能性是你的磁盘缺陷,那就要换个盘符安装。比如你现在安装在E盘则改为D盘。

使用系统自带磁盘纠错功能检查硬盘错误的步骤:

通过单击「开始」按钮,然后单击“计算机”,打开“计算机”。

右键单击要检查的驱动器,然后单击“属性”。

单击“工具”选项卡,然后在“查错”下,单击“立即检查”。如果系统提示您输入管理员密码或进行确认,请键入该密码或提供确认。

若要自动修复通过扫描所检测到的文件和文件夹问题,请选择“自动修复文件系统错误”。否则,磁盘检查将报告问题,但不进行修复。

若要执行彻底的检查,请选择“扫描并尝试恢复坏扇区”。该扫描操作将尝试查找并修复硬盘自身的物理错误,可能需要较长时间才能完成。

若要既检查文件错误又检查物理错误,请选择“自动修复文件系统错误”和“扫描并尝试恢复坏扇区”。

三、c#如何调用dll中的shellexecuteex函数来打开exe文件

首先那个shellexecuteex修饰符应该是public的

这是调用:

//加载程序集(dll文件地址),使用Assembly类

Assemblyassembly=Assembly.LoadFile(AppDomain.CurrentDomain.BaseDirectory+"Bin/App_Code.dll");

//获取类型,参数(名称空间+类)

Typetype=assembly.GetType("NiHao.Test");

//创建该对象的实例,object类型,参数(名称空间+类)

objectinstance=assembly.CreateInstance("NiHao.Test");

//设置SayHello方法中的参数类型,Type[]类型;如有多个参数可以追加多个

Type[]params_type=newType[1];

params_type[0]=Type.GetType("System.String");

//设置SayHello方法中的参数值;如有多个参数可以追加多个

Object[]params_obj=newObject[1];

params_obj[0]="jiaopeng";

//执行SayHello方法

objectvalue=type.GetMethod("SayHello",params_type).Invoke(instance,params_obj);

这是dll中的类:

namespaceNiHao

{

publicclassTest

{

publicstringSayHello(stringstr)

{

if(string.IsNullOrEmpty(str))

return"你没有传参数进来";

else

returnstr+"你好";

}

}

}

数组指针?数组指针使用方法nokia 1650(nokia1650好用吗)