VB ShellExecute 函数应用技巧
2010年05月24日
Flex data provider | PV3D第一个测试文件
ShellExecute
声明:
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _ (ByVal hWnd As Long, ByVal lpOperation As String, _ ByVal lpFile As String, ByVal lpParameters As String, _ ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
原型:
HINSTANCE ShellExecute(
HWND hwnd, //父窗口句柄
LPCTSTR lpOperation, //操作,"open","print","explore"
LPCTSTR lpFile, //文件名,前面可加路径
LPCTSTR lpParameters, //参数
LPCTSTR lpDirectory, //默认文件夹
INT nShowCmd //显示方式
);
打开一个应用程序
ShellExecute(this->m_hWnd,"open","calc.exe","","", SW_SHOW );
或
ShellExecute(this->m_hWnd,"open","notepad.exe","c:MyLog.log","",SW_SHOW );
打开一个同系统程序相关连的文档
ShellExecute(this->m_hWnd,"open","c:abc.txt","","",SW_SHOW );
激活相关程序,发送EMAIL
ShellExecute(this->m_hWnd,"open","mailto:xxf@5y6s.com","","", SW_SHOW );
打开文件夹
ShellExecute(handle, "open", path_to_folder, NULL, NULL, SW_SHOWNORMAL)
用系统打印机打印文档
ShellExecute(this->m_hWnd,"print","c:abc.txt","","", SW_HIDE);
本函数还可以用来连接到网页,照下面写就行了:
ShellExecute 0&, vbNullString, "", vbNullString, vbNullString, vbNormalFocus
或者这样写来发送Email:
ShellExecute me.hwnd, "open", "mailto:xxf@5y6s.com", vbNullString, vbNullString, SW_SHOW
另外有ShellExecute的替代用法,更加简单实用,不用API,一句Shell搞定!
连接到网页:
Shell "rundll32.exe url.dll,FileProtocolHandler "
打开文件:
Shell "rundll32.exe url.dll,FileProtocolHandler " & App.Path & "SHELLTST.TXT"
ShellExecute API应用整理
作者: yanek
1. 执行“打开”,“查找”,“资源管理器”和“打印”
必要的声明:
’ nShowCmd
Public Const SW_HIDE = 0
Public Const SW_SHOWNORMAL = 1
Public Const SW_SHOWMINIMIZED = 2
Public Const SW_SHOWMAXIMIZED = 3
Public Const SW_MAXIMIZE = 3
Public Const SW_SHOWNOACTIVATE = 4
Public Const SW_SHOW = 5
Public Const SW_MINIMIZE = 6
Public Const SW_SHOWMINNOACTIVE = 7
Public Const SW_SHOWNA = 8
Public Const SW_RESTORE = 9
’ Error Code
Public Const ERROR_FILE_NOT_FOUND = 2
Public Const ERROR_PATH_NOT_FOUND = 3
Public Const ERROR_BAD_FORMAT = 11
Public Const SE_ERR_FNF = 2
Public Const SE_ERR_PNF = 3
Public Const SE_ERR_ACCESSDENIED = 5
Public Const SE_ERR_OOM = 8
Public Const SE_ERR_SHARE = 26
Public Const SE_ERR_ASSOCINCOMPLETE = 27
Public Const SE_ERR_DDETIMEOUT = 28
Public Const SE_ERR_DDEFAIL = 29
Public Const SE_ERR_DDEBUSY = 30
Public Const SE_ERR_NOASSOC = 31
Public Const SE_ERR_DLLNOTFOUND = 32
Public Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" _
(ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
“打开“操作
ShellExecute Me.hwnd, "open", _
Text1.Text, _
vbNullString, vbNullString, _
SW_SHOWNORMAL
“查找“操作
ShellExecute Me.hwnd, "find", _
LocalDir, _
vbNullString, vbNullString, _
SW_SHOWNORMAL
“打印“操作
ShellExecute Me.hwnd, "print", _
Text1.Text, _
vbNullString, vbNullString, _
SW_SHOWNORMAL
“资源管理器“
ShellExecute Me.hwnd, "explore", _
LocalDir, _
vbNullString, vbNullString, _
SW_SHOWNORMAL
打开“我的文档“
ShellExecute Me.hwnd, _
"open", "explorer", _
vbNullString, vbNullString, _
SW_SHOWNORMAL
打开“我的电脑“
’ 我的电脑
’ HKEY_CLASSES_ROOTCLSID’ {20D04FE0-3AEA-1069-A2D8-08002B30309D}
ShellExecute Me.hwnd, "open", _
"explorer", _
"::{20D04FE0-3AEA-1069-A2D8-08002B30309D}", _
vbNullString, SW_SHOWNORMAL
打开“网上邻居“
’ 网上邻居
’ HKEY_CLASSES_ROOTCLSID’ {208D2C60-3AEA-1069-A2D7-08002B30309D}
ShellExecute Me.hwnd, "open", _
"explorer", _
"::{208D2C60-3AEA-1069-A2D7-08002B30309D}", _
vbNullString, SW_SHOWNORMAL
打开“回收站“
’ 回收站
’ HKEY_CLASSES_ROOTCLSID’ {645FF040-5081-101B-9F08-00AA002F954E}
ShellExecute Me.hwnd, "open", _
"explorer", _
"::{645FF040-5081-101B-9F08-00AA002F954E}", _
vbNullString, SW_SHOWNORMAL
ShellExecuteEx API演示
必要声明:
Public Type SHELLEXECUTEINFO
cbSize As Long
fMask As Long
hwnd As Long
lpVerb As String
lpFile As String
lpParameters As String
lpDirectory As String
nShow As Long
hInstApp As Long
’ Optional fields
lpIDList As Long
lpClass As String
hkeyClass As Long
dwHotKey As Long
hIcon As Long
hProcess As Long
End Type
’ fMask
Public Const SEE_MASK_CLASSKEY = &H3
Public Const SEE_MASK_CLASSNAME = &H1
Public Const SEE_MASK_CONNECTNETDRV = &H80
Public Const SEE_MASK_DOENVSUBST = &H200
Public Const SEE_MASK_FLAG_DDEWAIT = &H100
Public Const SEE_MASK_FLAG_NO_UI = &H400
Public Const SEE_MASK_HOTKEY = &H20
Public Const SEE_MASK_ICON = &H10
Public Const SEE_MASK_IDLIST = &H4
Public Const SEE_MASK_INVOKEIDLIST = &HC
Public Const SEE_MASK_NOCLOSEPROCESS = &H40
Public Declare Function ShellExecuteEX Lib "shell32.dll" _
Alias "ShellExecuteEx" _
(lpExecInfo As SHELLEXECUTEINFO) As Boolean
执行调用“文件属性“对话框
Dim dwReturn As Long
Dim lpExecInfo As SHELLEXECUTEINFO
With lpExecInfo
.cbSize = Len(lpExecInfo)
.fMask = SEE_MASK_NOCLOSEPROCESS or _
SEE_MASK_INVOKEIDLIST or _
SEE_MASK_FLAG_NO_UI
.hwnd = Me.hwnd
.lpVerb = "properties"
.lpFile = LocalDir & File1.FileName
.lpParameters = vbNullChar
.lpDirectory = vbNullChar
.nShow = SW_SHOWNORMAL
.hInstApp = 0
.lpIDList = 0
End With
dwReturn = ShellExecuteEX(lpExecInfo)
发表评论
-
通过ACL和.net Framework实施对Windows对象访问的管理
2012-01-20 01:02 832通过ACL和.net Framework实施对Windows对 ... -
Windows Azure(四-2):云端的文件系统(Blob Storage)
2012-01-20 01:02 740Windows Azure(四-2):云端的文件系统(Blob ... -
windows 64bit平台移植总结
2012-01-20 01:02 809windows 64bit平台移植总结 2010年08月10 ... -
Windows Mobile Test Framework实现手机软件自动化测试的介绍
2012-01-20 01:02 853Windows Mobile Test Framework实现 ... -
是谁成就了凤姐的忘形
2012-01-19 08:50 636是谁成就了凤姐的忘形 2010年06月02日 ... -
全国名小吃
2012-01-19 08:50 589全国名小吃 2012年01月14日 广西小吃 广西菜点由 ... -
看“非诚勿扰”(2011.3.27)
2012-01-19 08:50 654看“非诚勿扰”(2011.3.27 ... -
全国各省女孩性格+美丽程度比较分析!
2012-01-19 08:50 771全国各省女孩性格+美丽 ... -
中国不同地方女人的主要特点
2012-01-19 08:50 892中国不同地方女人的主 ... -
转: Boost下载安装编译配置使用指南(含Windows和Linux)
2012-01-17 01:18 608转: Boost下载安装编译配 ... -
Android环境搭建(jdk1.6+eclipes3.4.1+Android sdk2.3+adt0.9.7)
2012-01-17 01:18 781Android环境搭建(jdk1.6+eclipes3.4.1 ... -
Windows系统下查看Android的源码的方法
2012-01-17 01:18 910Windows系统下查看Android的源码的方法 2010 ... -
修复工具类
2012-01-17 01:18 685修复工具类 2011年05月08日 ... -
制作VB安装程序问答(Package & Deployment)
2012-01-15 20:01 780制作VB安装程序问答(Package & Deploy ... -
vb代码2
2012-01-15 20:01 694vb代码2 2010年11月21日 ... -
VB 打开文件
2012-01-15 20:01 985VB 打开文件 2009年07月21日 关于VB中She ... -
天铭本期热招岗位7.19-7.25
2012-01-15 20:01 10天铭本期热招岗位7.19-7. ... -
程序员如何提升(看了很多文章以后的总结/摘要)--未完待续
2012-01-11 12:11 548程序员如何提升(看了很多文章以后的总结/摘要)--未完待续 ... -
DB2数据库常用命令集
2012-01-11 12:11 594DB2数据库常用命令集 2011年05月01日 mem ... -
乐观锁与悲观锁-结合hibernate的简介--iteye技术网站
2012-01-11 12:11 690乐观锁与悲观锁-结合hib ...
相关推荐
使用ShellExecute函数实现以管理员身份运行程序
win32和wince系统自带的打开exe文件的函数区别
ShellExecute函数用法的实例代码,需要的朋友可以参考一下
详细的说明ShellExecute函数的用法,该函数的功能很强大的
Crack8_编程小组[K.8] QQ吻 欢迎您 Blog http://qqhack8.blog.163.com
Delphi中ShellExecute的使用方法介绍
总之,ShellExecute函数就是如此简单地打开磁盘文件和Internet文件。
内容索引:VC/C++源码,其它分类,ShellExecute,OutLook,发邮件 C程序调用ShellExecute函数打开发邮件的OutLook程序,编译成功后会生成一个命令提示符可执行程序,打开后显示:确认打开邮件收发程序!(Y/N),如果选择Y,...
在C语言源程序中调用API函数ShellExecute 详细解答
shellEXEcute的使用:调用计算器,调用excel,调用邮箱,调用记事本,打开指定网址的网页,打开指定的txt文件,运行一个DOS命令并立即返回等
delphi中shellExecute的使用方法......
ShellExecute使用详解,doc格式
GetTempFileName 这个函数包含了一个临时文件的名字,它可由应用程序使用 GetTempPath 获取为临时文件指定的路径 GetVolumeInformation 获取与一个磁盘卷有关的信息 GetWindowsDirectory 获取Windows目录的完整...
30、vb6使用ShellExecute调用RAR进行解压.txt 31、vb6释放资源文件.txt 32、vb6提取包含特定字符的行的内容.txt 33、vb6托盘+气泡(不用模块).txt 34、vb6拖动text文本框.txt 35、vb6拖动没有标题栏的窗口.txt 36、vb...
C# ShellExecute 方法的各种调用的示例源代码
通过函数ShellExecute(this->m_hWnd,"open","SoftBoard.exe",sPath,"",SW_SHOW );调用已经做好的EXE软键盘,该函数也可以打开网页、记事本或其它程序。
所用到的 API 函数 GetAsyncKeyState 、ShellExecute,通过按这些按键可以打开相关的网站,大可不必记住那么多的网址),大家是不是非常想得到这样的键盘,好的,大家向下看,以编程的方式可以使用每一个网虫的...
API进程与线程函数WinExec、ShellExecute、LoadLibrary、FreeLibrary.pdf
使用labview2013中文版编辑,调用shell中的ShellExecute实现打开外部应用程序,VI有详细说明,参数如下: int32_t ShellExecuteA(int32_t hwnd, int32_t lpOperation, CStr paramenters, CStr 参数4, CStr directory...