But : Tuer Firefox proprement au setup pour pouvoir ecrire dans prefs.js

Extrait de l'article http://support.microsoft.com/kb/176391/EN-US/
      Option Explicit
      Private Declare Function WaitForSingleObject Lib "kernel32" _
         (ByVal hHandle As Long, _
         ByVal dwMilliseconds As Long) As Long
      Private Declare Function FindWindow Lib "user32" _
         Alias "FindWindowA" _
         (ByVal lpClassName As String, _
         ByVal lpWindowName As String) As Long
      Private Declare Function PostMessage Lib "user32" _
         Alias "PostMessageA" _
         (ByVal hwnd As Long, _
         ByVal wMsg As Long, _
         ByVal wParam As Long, _
         ByVal lParam As Long) As Long
      Private Declare Function IsWindow Lib "user32" _
         (ByVal hwnd As Long) As Long
      Private Declare Function OpenProcess Lib "kernel32" _
         (ByVal dwDesiredAccess As Long, _
         ByVal bInheritHandle As Long, _
         ByVal dwProcessId As Long) As Long
      Private Declare Function GetWindowThreadProcessId Lib "user32" _
         (ByVal hwnd As Long, _
         lpdwProcessId As Long) As Long
      'Constants that are used by the API
      Const WM_CLOSE = &H10
      Const SYNCHRONIZE = &H100000
      Private Sub Form_Load()
         Command1.Caption = "Start the Calculator"
         Command2.Caption = "Close the Calculator"
      End Sub
      Private Sub Command1_Click()
      'Starts Windows Calculator
         Shell "calc.exe", vbNormalNoFocus
      End Sub
      Private Sub Command2_Click()
      'Closes Windows Calculator
         Dim hWindow As Long
         Dim hThread As Long
         Dim hProcess As Long
         Dim lProcessId As Long
         Dim lngResult As Long
         Dim lngReturnValue As Long
         hWindow = FindWindow(vbNullString, "Calculator")
         hThread = GetWindowThreadProcessId(hWindow, lProcessId)
         hProcess = OpenProcess(SYNCHRONIZE, 0&, lProcessId)
         lngReturnValue = PostMessage(hWindow, WM_CLOSE, 0&, 0&)
         lngResult = WaitForSingleObject(hProcess, INFINITE)
         'Does the handle still exist?
         hWindow = FindWindow(vbNullString, "Calculator")
         If IsWindow(hWindow) = 1 Then
            'The handle still exists. Use the TerminateProcess function
            'to close all related processes to this handle. See the
            'article for more information.
            MsgBox "Handle still exists."
            'Handle does not exist.
            MsgBox "All Program Instances Closed."
         End If
      End Sub
winlibre_dev/firefox_s_winlibre_startpage.txt · Last modified: 2011/07/21 14:29
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki