Connecting Tech Pros Worldwide Forums | Help | Site Map

Execute a shell command from a program

sashi's Avatar
Expert
 
Join Date: Jun 2006
Location: Seremban, Malaysia
Posts: 1,630
#1   Dec 4 '06
ShellExecute

Expand|Select|Wrap|Line Numbers
  1. 'Module code - modShellExecute
  2.  
  3. 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
  4.  
  5. 'vbHide = 0
  6. 'vbNormalFocus = 1
  7. 'vbMinimizedFocus = 2
  8. 'vbMaximizedFocus = 3
  9. 'vbNormalNoFocus = 4
  10. 'vbMinimizedNoFocus = 6
  11.  
  12. Public Enum vbWindowsState
  13.     Hide = 0
  14.     NormalFocus = 1
  15.     MinimizedFocus = 2
  16.     MaximizedFocus = 3
  17.     NormalNoFocus = 4
  18.     MinimizedNoFocus = 6
  19. End Enum
  20.  
  21. Public Function OpenApplication(ByVal strOperation As String, _
  22.                                 ByVal strApplicationName As String, _
  23.                                 ByVal strParameter As String, _
  24.                                 ByVal strApplicationDirectory As String, _
  25.                                 ByVal WindowsState As vbWindowsState) As Boolean
  26.  
  27. Dim nWindowsState As Integer
  28.  
  29.     Select Case WindowsState
  30.         Case 0
  31.             nWindowsState = vbHide
  32.         Case 1
  33.             nWindowsState = vbNormalFocus
  34.         Case 2
  35.             nWindowsState = vbMinimizedFocus
  36.         Case 3
  37.             nWindowsState = vbMaximizedFocus
  38.         Case 4
  39.             nWindowsState = vbNormalNoFocus
  40.         Case 6
  41.             nWindowsState = vbMinimizedNoFocus
  42.     End Select
  43.  
  44.     ShellExecute 0&, strOperation, strApplicationName, strParameter, strApplicationDirectory, WindowsState
  45. End Function
  46.  
  47. 'Form code - frmShellExecute
  48.  
  49. Private Sub cmdShellExecute_Click()
  50.     modShellExecute.OpenApplication vbNullString, "The Application", vbNullString, vbNullString, MaximizedFocus
  51. End Sub
  52.  

Last edited by RedSon; Nov 21 '07 at 07:07 PM.



Reply