| Private Sub Command1_Click() Dim r As Long Dim FileName As String FileName = "c:\autoexec.bat" r=ShowProperties(FileName,Me.hwnd) If r<=32 Then MsgBox "Error! NO c:\autoexec.bat File" End SuB |
| '通用声明 Option Explicit 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 SESE_MASK_NOCLOSEPROCESS=&H40 Public Const SEE_MASK_FLAG_NO_UI = &H400 Declare Function ShellExecuteEX Lib "shell32.dll" Alias "ShellExecuteEx" (SEI As SHELLEXECUTEINFO) As Long 'ShowProperties过程 Public Function ShowProperties(FileName As String, OwnerhWnd As Long) 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) ShowProperties = SEI.hInstApp End Function |