This tip demonstrates how to use
the Win32 API to bring up the explorer
properties dialog box for a specified
file. This API function has the
same effect as right clicking on a file
in Windows 95 and selecting
properties. The dialog box that is
opened is shown below.
Declarations
This following code must be placed
in the projects declarations section.
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
lpIDList As Long
lpClass As String
hkeyClass As Long
dwHotKey As Long
hIcon As Long
hProcess As Long
End Type
Public Const SEE_MASK_INVOKEIDLIST = &HC
Public Const SEE_MASK_NOCLOSEPROCESS = &H40
Public Const SEE_MASK_FLAG_NO_UI = &H400
Declare Function ShellExecuteEX Lib
"shell32.dll" Alias _
"ShellExecuteEx" (SEI As SHELLEXECUTEINFO) As
Long
Code
Public Sub ShowProps(FileName As String, OwnerhWnd
As Long)
Dim SEI As SHELLEXECUTEINFO
Dim r As Long
With SEI
.cbSize =
Len(SEI)
.fMask =
SEE_MASK_NOCLOSEPROCESS Or _
SEE_MASK_INVOKEIDLIST Or SEE_MASK_FLAG_NO_UI
.hwnd =
OwnerhWnd
.lpVerb =
"properties"
.lpFile =
FileName
.lpParameters
= vbNullChar
.lpDirectory
= vbNullChar
.nShow = 0
.hInstApp = 0
.lpIDList = 0
End With
r = ShellExecuteEX(SEI)
End Sub
Use
To show the properties dialog box
of "c:\autoexec.bat", use the
following code:
Call ShowProps("c:\autoexec.bat", Me.hwnd)
|