Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

C-Sharp - Internet-Explorer-Instanzen aus SHDocVW.ShellWindowsClass() auslesen

Frage Entwicklung C und C++

Mitglied: mabue88

mabue88 (Level 2) - Jetzt verbinden

03.05.2014, aktualisiert 16:15 Uhr, 2179 Aufrufe, 2 Kommentare

Hallo,

in einem C#-Programm muss ich die Instanzen der aktuell in Windows geöffneten Internet-Explorer einlesen.

Folgenden Code verwende ich bislang dafür:
01.
static SHDocVw.InternetExplorer[] getIEWindows() 
02.
03.
    // Anzahl der IE-Fenster ermitteln 
04.
    int anzahl_ie = 0; 
05.
    foreach (SHDocVw.InternetExplorer ie in new SHDocVw.ShellWindowsClass()) 
06.
        anzahl_ie++; 
07.
 
08.
    // Array für die Aufnahme der IE-Fenster mit Länge 0 anlegen 
09.
    SHDocVw.InternetExplorer[] ie_windows = new SHDocVw.InternetExplorer[anzahl_ie]; 
10.
 
11.
    int zaehler = 0; 
12.
    foreach (SHDocVw.InternetExplorer ie in new SHDocVw.ShellWindowsClass()) 
13.
14.
        ie_windows[zaehler] = ie; 
15.
        zaehler++; 
16.
17.
 
18.
    return ie_windows 
19.
} 
Der Code funktioniert soweit.
Aber ich habe mich gefragt, ob ich aus "SHDocVw.ShellWindowsClass()" nicht direkt nur die Internet Explorer-Fenster abfragen und diese direkt in ein Array schreiben kann?! Das mehrmalige Durchlaufen der "SHDocVw.ShellWindowsClass()" gefällt mir nicht so richtig...

Danke
mabue
Mitglied: colinardo
LÖSUNG 03.05.2014, aktualisiert um 16:15 Uhr
Hallo mabue,
dann nehme anstatt eines statischen Arrays in dem du die Instanzen speicherst einfach ein dynamisches Array (z.B. eine ArrayList()) dem du die Instanzen direkt hinzufügen kannst ohne erst die Größe ermitteln zu müssen, dann benötigst du nur eine Schleife.

ArrayList ie_windows = new ArrayList();
und dann die Instanz innerhalb einer einzigen Schleife so zum Array hinzufügen:
ie_windows.Add(ie);
Eine Methode die direkt nur Handles von spezifischen Fenstern zurückgibt lässt sich mit den Win32 APIs machen: http://stackoverflow.com/questions/2238609/c-sharp-get-handles-to-all-w ...

Grüße Uwe
Bitte warten ..
Mitglied: mabue88
03.05.2014 um 16:22 Uhr
Hallo colinardo,

Volltreffer! Sowas habe ich gesucht! Danke!

Gruss
mabue
Bitte warten ..
Ähnliche Inhalte
Webbrowser
Internet Explorer schliesst direkt bei Start (10)

Frage von gabeBU zum Thema Webbrowser ...

Windows 10
gelöst Internet Explorer als Standardbrowser per Gruppenrichtlinie (3)

Frage von Falaffel zum Thema Windows 10 ...

Verschlüsselung & Zertifikate
Deprecation of SHA-1 for SSL/TLS Certificates in Microsoft Edge and Internet Explorer 11

Link von DerWoWusste zum Thema Verschlüsselung & Zertifikate ...

Webbrowser
gelöst Internet Explorer 11 Desktop Benachrichtigung möglich? (3)

Frage von mexx zum Thema Webbrowser ...

Neue Wissensbeiträge
Windows Server

Verschieben von Servergespeicherten Profilen an einen anderen Speicherort

Erfahrungsbericht von Enriqe zum Thema Windows Server ...

Windows 10

Plattformdienst für unbekannte Geräte (7023)

Tipp von KMUlife zum Thema Windows 10 ...

Administrator.de Feedback

Umgangsformen auf der Seite

(16)

Information von Frank zum Thema Administrator.de Feedback ...

Heiß diskutierte Inhalte
Windows Server
Windows Server Komplettspiegelung (16)

Frage von pdiddo zum Thema Windows Server ...

Batch & Shell
gelöst Dir tc Befehl unter Windows 10 macht Probleme (14)

Frage von sugram zum Thema Batch & Shell ...

Windows Server
Windows Server 2016 RDS Remoteapp Anzeigefehler (11)

Frage von qlnGenius zum Thema Windows Server ...