Results 1 to 3 of 3
  1. #1
    Join Date
    May 2004
    Posts
    25

    Unanswered: Is Application Running or file open?

    Is there any function in Access which can tell me whether a particular application is running or not. I need to know whether MS Excel is running or particular excel file is open.

    Drahos

  2. #2
    Join Date
    Mar 2004
    Location
    belgium
    Posts
    290
    have a look at file atributes of the filessystemobject

  3. #3
    Join Date
    Oct 2003
    Location
    Ger
    Posts
    1,969
    Provided Answers: 1

    Lightbulb

    '***************** Code Start ***************
    'This code was originally written by Dev Ashish.
    'It is not to be altered or distributed,
    'except as part of an application.
    'You are free to use it in any application,
    'provided the copyright notice is left unchanged.
    '
    'Code Courtesy of
    'Dev Ashish
    '
    Private Const SW_HIDE = 0
    Private Const SW_SHOWNORMAL = 1
    Private Const SW_NORMAL = 1
    Private Const SW_SHOWMINIMIZED = 2
    Private Const SW_SHOWMAXIMIZED = 3
    Private Const SW_MAXIMIZE = 3
    Private Const SW_SHOWNOACTIVATE = 4
    Private Const SW_SHOW = 5
    Private Const SW_MINIMIZE = 6
    Private Const SW_SHOWMINNOACTIVE = 7
    Private Const SW_SHOWNA = 8
    Private Const SW_RESTORE = 9
    Private Const SW_SHOWDEFAULT = 10
    Private Const SW_MAX = 10

    Private Declare Function apiFindWindow Lib "user32" Alias _
    "FindWindowA" (ByVal strClass As String, _
    ByVal lpWindow As String) As Long

    Private Declare Function apiSendMessage Lib "user32" Alias _
    "SendMessageA" (ByVal Hwnd As Long, ByVal Msg As Long, ByVal _
    wParam As Long, lParam As Long) As Long

    Private Declare Function apiSetForegroundWindow Lib "user32" Alias _
    "SetForegroundWindow" (ByVal Hwnd As Long) As Long

    Private Declare Function apiShowWindow Lib "user32" Alias _
    "ShowWindow" (ByVal Hwnd As Long, ByVal nCmdShow As Long) As Long

    Private Declare Function apiIsIconic Lib "user32" Alias _
    "IsIconic" (ByVal Hwnd As Long) As Long

    Function fIsAppRunning(ByVal strAppName As String, _
    Optional fActivate As Boolean) As Boolean
    Dim lngH As Long, strClassName As String
    Dim lngX As Long, lngTmp As Long
    Const WM_USER = 1024
    On Local Error GoTo fIsAppRunning_Err
    FisAppRunning = False



    Select Case LCase$(strAppName)
    Case "excel": strClassName = "XLMain"
    Case "word": strClassName = "OpusApp"
    Case "access": strClassName = "OMain"
    Case "powerpoint95": strClassName = "PP7FrameClass"
    Case "powerpoint97": strClassName = "PP97FrameClass"
    Case "notepad": strClassName = "NOTEPAD"
    Case "paintbrush": strClassName = "pbParent"
    Case "wordpad": strClassName = "WordPadClass"
    Case Else: strClassName = vbNullString
    End Select

    If strClassName = "" Then
    lngH = apiFindWindow(vbNullString, strAppName)
    Else
    lngH = apiFindWindow(strClassName, vbNullString)
    End If
    If lngH <> 0 Then
    apiSendMessage lngH, WM_USER + 18, 0, 0
    lngX = apiIsIconic(lngH)
    If lngX <> 0 Then
    lngTmp = apiShowWindow(lngH, SW_SHOWNORMAL)
    End If
    If fActivate Then
    lngTmp = apiSetForegroundWindow(lngH)
    End If
    fIsAppRunning = True
    End If
    fIsAppRunning_Exit:
    Exit Function
    fIsAppRunning_Err:
    fIsAppRunning = False
    Resume fIsAppRunning_Exit
    End Function
    '******************** Code End ****************

    Calling [COLOR=Blue]fIsAppRunning("Excel",True)[/COLOR

    Or have a look here

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •