Avatar billede whistler_whistler Nybegynder
14. november 2001 - 09:35 Der er 5 kommentarer og
1 løsning

Start af program når Interner Explorer startes

Jeg har lavet et program som skal teste diverse ting hver gang man åbner internet explorer, men kan dette lade sig gøre???
Avatar billede tmceu Praktikant
14. november 2001 - 12:56 #1
Kun på din egen maskine ?
Avatar billede whistler_whistler Nybegynder
14. november 2001 - 13:07 #2
nej hvis det er muligt at lave det så det virker på alle maskiner hvorpå IE er installeret ville det være godt, da programmet skal bruges af mange forskellige brugere
Avatar billede allanmc Nybegynder
14. november 2001 - 13:31 #3
En nem løsning ville jo være at sætte de IE genveje du nu bruger til at starte dit program istedet. Dit program kan så selv starte IE når det er færdig med at \"teste diverse ting\" ;]
Avatar billede whistler_whistler Nybegynder
14. november 2001 - 13:35 #4
skal jeg så ændre alle genveje til internet explorer til at starte mit program som så starter internet explorer, ja hvis der ikke er en nemmere løsning er det da en mulighed. men hvordan ændrer man i genvejene eller hvordan oprettes nye som overskriver de gamle
Avatar billede allanmc Nybegynder
14. november 2001 - 14:50 #5
Hvis du ikke vil gøre det på den måde kan du jo også bare lade dit program køre hele tiden, og så lade det tjekke hvornår IE starter, men det kræver jo ressourcer.
Ja jeg havde tænkt mig at du skulle erstatte alle genveje ja.
De genveje du bruger er vel den på skrivebordet og den i \"hurtig start\".
Den på skrivebordet kan du fjerne ved hjælp af TweakUI (hvis det ikke er en normal genvej altså), og den i \"hurtig start\" kan du bare højre klikke på og vælge slet. Så skal du så bare oprette genveje til dit program, og placere dem hvor du vil. Du kan jo også ændre genvejs ikonet på dit program til IE ikonet.
Avatar billede sjh Nybegynder
14. november 2001 - 21:42 #6
Prøv koden her. (dit program skal bare starte op sammen med computeren)

Ellers kan du bare lave det som en activex.exe som starter dit program. :-)

\'----------------------------------- Module1 -----------------------------------
Option Explicit

Private Declare Function GetWindowTextLength Lib \"user32\" Alias \"GetWindowTextLengthA\" (ByVal hwnd As Long) As Long
Private Declare Function EnumWindows& Lib \"user32\" (ByVal lpEnumFunc As Long, ByVal lParam As Long)
Private Declare Function GetWindowText Lib \"user32\" Alias \"GetWindowTextA\" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Declare Function IsWindowVisible& Lib \"user32\" (ByVal hwnd As Long)
Private Declare Function GetParent& Lib \"user32\" (ByVal hwnd As Long)

Dim sPattern As String, hFind As Long

Private Function FindActivateTitle(ByVal hwnd As Long, ByVal lParam As Long) As Long
Dim k As Long, sName As String
    If IsWindowVisible(hwnd) And GetParent(hwnd) = 0 Then
        sName = Space$(128)
        k = GetWindowText(hwnd, sName, 128)
        If k > 0 Then
            sName = Left$(sName, k)
            If lParam = 0 Then sName = UCase(sName)
            If sName Like sPattern Then
                hFind = hwnd
FindActivateTitle = 0
    Exit Function
End If
End If
End If
FindActivateTitle = 1
End Function

Function ActivateAppHwnd(sTitle As String, Optional sMatchCase As Boolean = True) As Long
sPattern = sTitle: hFind = 0
If Not sMatchCase Then sPattern = UCase(sPattern)
EnumWindows AddressOf FindActivateTitle, sMatchCase
ActivateAppHwnd = hFind
End Function

Function AppTitle(hwnd As Long) As String
Dim WText As String * 512
Dim bRet As Long, WLen As Long
  WLen = GetWindowTextLength(hwnd)
  bRet = GetWindowText(hwnd, WText, WLen + 1)
AppTitle = WText
End Function
\'----------------------------------- Module1 -----------------------------------


\'----------------------------------- Form1 -----------------------------------
Option Explicit

Private Sub Form_Load()
  Me.Visible = False
  Timer1.Interval = 500
End Sub

Private Sub Timer1_Timer()
Dim lhWnd As Long
lhWnd = ActivateAppHwnd(\"*Microsoft Internet Explorer\", True)
  If lhWnd <> 0 Then

    MsgBox AppTitle(lhWnd)

    Me.Visible = True
    Timer1.Enabled = False
  End If
End Sub
\'----------------------------------- Form1 -----------------------------------
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester