Gå til innhold

Anbefalte innlegg

Videoannonse
Annonse

Dersom du skal gjøre dette uten API, må du referere Microsoft Internet Controls og benytte følgende kode:

 

Dim SW As ShellWindows 
Dim IE As InternetExplorer

Set SW = New ShellWindows

For Each IE In SW
  Select Case TypeName(IE.Document)
       Case "HTMLDocument"
          MsgBox "IE Window. URL: " &  IE.LocationURL
       Case "IShellFolderViewDual"
          MsgBox "Explorer Window Path: " &  IIf(IE.LocationURL = "", IE.LocationName, IE.LocationURL)
       Case Else
          MsgBox TypeName(IE.Document) & " Window"
   End Select
Next

Lenke til kommentar

Det betyr ingen ting om det er med eller uten API... hvordan kan jeg finne ut vilken av vinduene som er aktive? og har du en link som dokumenter "New ShellWindows"/"InternetExplorer"?

 

Uansett så for jeg ShellWindows Not Defined(User-defined type not defined)

Lenke til kommentar

Hmm, eg fekk en rar feil,

 

Error: -2147467259 Automation error

Unspecified error 0 Project1 tmrHwnd

 

någen ide kossen eg kan fiksa det?

 

Private Sub tmrhWnd_Timer()
On Error GoTo Err2

Static lLast As Long
Dim hTemp As Long
Dim SW As New ShellWindows
Dim IE As InternetExplorer

hTemp = GetActiveWindow
If lLast <> hTemp Then
   Dim bIE As Boolean
   
   lLast = hTemp
   
   For Each IE In SW
       If hTemp = IE.hWnd Then bIE = True ' <-- Her e feilen..
   Next
   
   If bIE Then
       lLasthWnd = IE.hWnd
   End If
End If

Exit Sub
Err2:
Debug.Print "Error: " & err.Number, err.Description, err.LastDllError, err.Source, "tmrHwnd"
End Sub

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...