Top-Themen

Aktuelle Themen (A bis Z)

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 Chrometabs programmatisch zählen

Mitglied: DerWoWusste

DerWoWusste (Level 5) - Jetzt verbinden

14.02.2018 um 17:38 Uhr, 408 Aufrufe, 28 Kommentare, 3 Danke

Moin Kollegen.

Ich suche einen Weg, wie ich per Skript ermitteln kann, wie viele Tabs ein Nutzer in Chrome offen hat. Es wäre zu einfach, wenn dies über die Anzahl der chrome.exe-Prozesse ginge - leider nein. Manchmal ist nur ein Tab offen, aber es laufen für diesen Nutzer bis zu 9 Chromeprozesse.

Hat jemand den Durchblick?
28 Antworten
Mitglied: emeriks
14.02.2018 um 17:51 Uhr
Hi DWW,
he he. Letztens hatte ich selbe Aufgebenstellung beim FireFox.
Da habe ich auch keinen Ansatz. Sicher ist, dass er beim FF für neue Tabs einen neuen Prozess startet oder einen freien nimmt. Wenn man einen Tab schließt, dann beendet er offenbar nicht den dafür bereits gestarteten Prozess, dieser wird dann "frei".

Wenn Du da eine Lösung für den Chrome findest, dann wäre ich interessiert. Vielleicht kann ich das dann für den FF adaptieren.

E.
Bitte warten ..
Mitglied: DerWoWusste
14.02.2018 um 19:10 Uhr
Moin.

Tja, snapdragon, das ergooglet man schnell, aber was mache ich damit? Ich stecke da nicht wirklich drin, um das zu verwerten.
Bitte warten ..
Mitglied: Epixc0re
14.02.2018 um 20:47 Uhr
Kannst Du Extensions im Chrome nach installieren? Dann könnte man da was bauen ...
Bitte warten ..
Mitglied: DerWoWusste
14.02.2018 um 20:50 Uhr
Ja klar, das könnte ich wohl, wenn's nicht anders geht.

Wenn es aber keine naheliegende Lösung gibt, wird es wohl doch auf die Zählung der chrome-Prozesse hinauslaufen Auch wenn die nicht immer so aussagekräftig ist, so besteht ja doch eine Korrelation von Tabs und Prozessen.
Bitte warten ..
Mitglied: Epixc0re
14.02.2018 um 21:01 Uhr
Ok, Vorschlag: chrome Extension welche auf close/Open Events für tabs reagiert und die Anzahl dann in ein temp file schreibt, welches Du dann einlesen kannst - was haltest Du davon?

lG,
Stefan
Bitte warten ..
Mitglied: DerWoWusste
14.02.2018 um 21:08 Uhr
Wenn der Sourcecode vorliegt, gerne.
Bitte warten ..
Mitglied: Epixc0re
14.02.2018 um 21:17 Uhr
Ich Tipp Dir das morgen mal runter, bin grad 500km gefahren & im Bett gelandet!

lG,
Stefan
Bitte warten ..
Mitglied: DerWoWusste
14.02.2018 um 21:47 Uhr
Nur wenn's leicht fällt.
Die Prozesse setzen sich offenbar aus Extensions (je einer pro Extension) plus der Anzahl der Tabs zusammen +2, welche ich nicht verstehe, aber was soll's. Da die meisten hier die gleiche Anzahl von Extensions haben, kann ich also auch so schon genau genug überblicken, wie viele Tabs jeder offen hat, indem ich die chrome-Prozesse zähle und einen festen Wert abziehe.
Bitte warten ..
Mitglied: colinardo
15.02.2018, aktualisiert um 11:23 Uhr
Servus DWW,
könnte dir das auch ohne Extension schnell als C# EXE für Chrome und Firefox zusammenschreiben.
Wenn noch Interesse besteht einfach melden.

Grüße Uwe
Bitte warten ..
Mitglied: rubberman
15.02.2018 um 11:30 Uhr
Hallo Uwe,

aus Interesse - wo greifst du an, um die Anzahl Tabs zu ermitteln? Ich hab gestern mal Spy angeworfen um zu sehen was ich für Fenster-Handles von Chrome bekomme. An der Stelle bin ich nicht weitergekommen da ich keine Handles von den Tabs bekommen habe, die inaktiv waren.

Steffen
Bitte warten ..
Mitglied: colinardo
15.02.2018, aktualisiert um 11:53 Uhr
Hallo Steffen.
Stichwort UIAutomationClient.dll ist heute im .NET Framework mit dabei.
https://msdn.microsoft.com/de-de/library/system.windows.automation(v=vs. ...
Und liegt hier
"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\WPF\UIAutomationClient.dll"
Zusätzlich einzubinden ist
"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\WPF\UIAutomationTypes.dll"

Nützlich zur Entwicklung ist dabei auch das GUI inspect.exe Tool aus dem Windows SDK.
https://msdn.microsoft.com/en-us/library/windows/desktop/dd318521(v=vs.8 ...

Grüße Uwe
Bitte warten ..
Mitglied: rubberman
15.02.2018 um 11:54 Uhr
Thx Uwe, schau ich mir heute Abend mal an

Steffen
Bitte warten ..
Mitglied: colinardo
LÖSUNG 15.02.2018, aktualisiert um 12:09 Uhr
So hier mal schnell was zum probieren:

.NET4 als Konsolenanwendung
BrowserTabCount_364782.zip


Aufruf dann für chrome so
Browsertabcount.exe -chrome
oder für den Feuerfux
Browsertabcount.exe -firefox
Angetestet auf Windows 10 Enterprise (letztes Build) x64 und als Veteran Windows 7 x64 mit aktuellen Browser-Versionen.

Ausgegeben wird nur die reine Anzahl der Tabs.

Wenn man die Titel der Tabs haben möchte das geht bei Bedarf auch problemlos.
Bitte warten ..
Mitglied: rubberman
15.02.2018 um 13:05 Uhr
Hallo Uwe,

funktioniert, hab das Tool aber ausgetrickst indem ich ein zweites Chrome Fenster aufgemacht habe. Im ersten hatte ich 3 Tabs, im zweiten einen. Je nachdem welches Fenster in Z Richtung am meisten vorn liegt, gibt mir das Tool entweder 3 oder 1 zurück.

Steffen
Bitte warten ..
Mitglied: colinardo
15.02.2018, aktualisiert um 13:20 Uhr
Zitat von rubberman:

Hallo Uwe,

funktioniert, hab das Tool aber ausgetrickst indem ich ein zweites Chrome Fenster aufgemacht habe. Im ersten hatte ich 3 Tabs, im zweiten einen. Je nachdem welches Fenster in Z Richtung am meisten vorn liegt, gibt mir das Tool entweder 3 oder 1 zurück.
Ja das habe ich auch schon bemerkt das liegt daran das der MainWindowHandle je nach Fokus zwischen den Prozessen springt auf die schnelle hab ich das jetzt noch nicht berücksichtigt.
Bitte warten ..
Mitglied: DerWoWusste
15.02.2018, aktualisiert um 14:35 Uhr
Was soll ich sagen?
Uwe, wie immer großartig. Klappt wie eine 1.

Ich nutze das übrigens, um Nutzer etwas zu zügeln, die unseren RD-Host mit bis zu 60 Chrometabs doch ein wenig ausbremsen.
Deployed ist das nun sehr einfach: einen geplanten Task im Nutzerteil der GPO deployen, der nur auf dem RDHost erstellt wird und stündlich im Nutzerkontext ausgeführt wird. Wenn das Resultat > 20 ist, bekommen die Nutzer nun ein schönes Popup, das sie doch bitte nicht nur Tasks öffnen, sondern auch hin und wieder ein paar schließen sollen.
Bitte warten ..
Mitglied: emeriks
15.02.2018 um 14:39 Uhr
Deployed ist das nun sehr einfach: einen geplanten Task im Nutzerteil der GPO deployen, der nur auf dem RDHost erstellt wird und stündlich im Nutzerkontext ausgeführt wird. Wenn das Resultat > 20 ist, bekommen die Nutzer nun ein schönes Popup, das sie doch bitte nicht nur Tasks öffnen, sondern auch hin und wieder ein paar schließen sollen.
Und damit machst Du Dich dann wieder beliebt ...
Bitte warten ..
Mitglied: colinardo
15.02.2018, aktualisiert um 14:45 Uhr
So, der Fehler das weitere Fenster mit Tabs sowohl bei Firefox und Chrome nicht berücksichtigt wurden ist mit dem aktuellen Build behoben. Link oben bleibt gleich. Edge und IE werde ich bei Zeiten eventuell noch hinzufügen wenn die Nachfrage da ist.
Bitte warten ..
Mitglied: DerWoWusste
15.02.2018, aktualisiert um 14:51 Uhr
@colinardo:
Welche Versionsnummer hat der Build, welcher mehrere Fenster berücksichtigt? Der Link oben gibt mir noch die alte 0.5.0.1
@emeriks
NIcht beliebt, aber gefürchtet.
Bitte warten ..
Mitglied: rubberman
15.02.2018 um 15:06 Uhr
Zitat von DerWoWusste:
Der Link oben gibt mir noch die alte 0.5.0.1
Nope. 0.5.0.20
Bitte warten ..
Mitglied: DerWoWusste
15.02.2018 um 15:13 Uhr
Ah-jetzt-ja. Eine 0.5.0.20!
Bitte warten ..
Mitglied: rubberman
16.02.2018 um 17:37 Uhr
Hallo Uwe

Ich hab gestern mal versucht dein Programm nachzustellen (OK ich gebe zu ich habe mir den Plaintext in deinem Tool angesehen um zu wissen mit was du gearbeitet hast ). Ich bin fast verzweifelt weil es nur sporadisch funktioniert hat. Dann ist mir aufgefallen, dass ich immer 0 zurück bekommen habe, wenn Chrome in die Taskleiste minimiert war. Wenn das Fenster nur im Hintergrund liegt, bekomme ich die korrekte Anzahl Tabs. Also hab ich nochmal mit deinem Tool getestet und gemerkt dass es sich genauso verhält. (Win10 Home 32 Bit, Version 1609. Bin leider heute nicht dazu gekommen das noch mal auf einer anderen Maschine zu verifizieren.) Hab bislang nicht rausgefunden wo der Fehler liegt, wollte dich aber zumindest informieren. Vermutlich findest du den Fehler schneller.

Steffen
Bitte warten ..
Mitglied: colinardo
17.02.2018, aktualisiert um 13:22 Uhr
Offensichtlich hängt Chrome die Tabs aus der Fenster-UI aus so lange es minimiert ist. Bei Firefox ist das nicht der Fall. Das ist ein Problem. Ich würde jetzt als Workaround höchstens einen temporären programmatischen Restore des(r) Fenster(s) (im Hintergrund) erwägen. Mal sehen ob ich noch eine andere Möglichkeit finde.

- edit 11:03 - Workaround für Chrome eingebaut wenn Fenster minimiert sind. (Link wie oben) 0.5.0.25.
Bitte warten ..
Mitglied: rubberman
17.02.2018 um 13:20 Uhr
Ah, okay. Heißt, da muss die WinAPI noch ein bisschen herhalten. Verstanden.

Grüße
Steffen
Bitte warten ..
Mitglied: rubberman
18.02.2018, aktualisiert um 16:48 Uhr
Für das Restore habe ich auch kein Workaround gefunden. Aber vielleicht 2 Vorschläge für Chrome:
- Nutze IsIconic() statt GetWindowPlacement(), dann sparst du dir das Overhead der WINDOWPLACEMENT Struktur.
- Suche nach dem ersten Tab, statt nach dem Button mit Name "Neuer Tab" oder "New Tab". Somit wird das ganze sprachunabhängig.
01.
PropertyCondition findCond = new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.TabItem); 
02.
AutomationElement firstTab = AutomationElement.FromHandle(hWnd).FindFirst(TreeScope.Descendants, findCond); 
03.
if (firstTab != null) 
04.
  cnt += TreeWalker.ControlViewWalker.GetParent(firstTab).FindAll(TreeScope.Children, findCond).Count;
Grüße
Steffen
Bitte warten ..
Mitglied: colinardo
18.02.2018, aktualisiert um 20:44 Uhr
Stimmt, das gibt's ja auch noch, danke, Brett vorm Kopp.
Jepp solange sie die UI nicht umbauen und sich da nicht noch ein anderes Tabitem davor verkrümelt, ok .
Bitte warten ..
Mitglied: rubberman
18.02.2018, aktualisiert um 21:29 Uhr
solange sie die UI nicht umbauen
Davor bist du nicht gefeit. Wenn der Klassenname dann nicht mehr mit "Chrome_WidgetWin" anfängt, hast du auch verloren

und sich da nicht noch ein anderes Tabitem davor verkrümelt
Ich hatte anfangs die komplette Struktur nach TabItems durchsucht. Dann bekommst du auch das richtige Ergebnis, dauert aber länger als nach dem ersten Fund nur die Children zu sammeln. (Es ist mir sowieso ein Rätsel warum das gefühlte Ewigkeiten dauert. Bei der handvoll Elemente die Inspect zeigt, sollte das Ergebnis in wenigen Millisekunden vorliegen.)
Bitte warten ..
Ähnliche Inhalte
Microsoft

Programmatische Deinstallation von abwesenden Geräten

gelöst Frage von DerWoWussteMicrosoft6 Kommentare

Moin Kollegen. Es geht um Windows 7/8.1. Man kann ja mittels der devcon.exe Geräte programmatisch deinstallieren. Leider kann devcon ...

Microsoft

Windows Explorer Bildkompression programmatisch ansprechen

gelöst Frage von DerWoWussteMicrosoft11 Kommentare

Moin Kollegen! Hat schon einmal jemand ein Kommando gefunden, um die in Windows eingebaute Bildkompression anzusprechen? Ich meine die, ...

Batch & Shell

In Batch Zählen

gelöst Frage von mavericklpBatch & Shell2 Kommentare

Guten Morgen zusammen, Ich habe ein kleines Problem mit einer Zählschleifer in der Batch Datei. Und zwar werden die ...

Batch & Shell

Unterverzeichnis zählen

gelöst Frage von karla123Batch & Shell20 Kommentare

Hallo liebes Forum, ich habe ein Problem und möchte Euch bitten mir zu helfen. Benötigt wird ein Batch mit ...

Neue Wissensbeiträge
Internet

Datendealing im WWW Tracking Methoden immer brutaler

Information von sabines vor 8 StundenInternet

Interessanter Artikel zum Thema Tracking im WWW und die immer "besseren" Methoden des Trackings. Professor Arvind Narayanan (Princeton-Universität) betreibt ...

Erkennung und -Abwehr

Ups: Einfaches Nullzeichen hebelte den Anti-Malware-Schutzt in Windows 10 aus

Information von kgborn vor 21 StundenErkennung und -Abwehr

Windows 10 ist das sicherste Windows aller Zeiten, wie Microsoft betont. Insidern ist aber klar, das es da Lücken, ...

Windows 10

Windows 10 on ARM: von Microsoft entfernte Info - Klartext, was nicht geht

Information von kgborn vor 23 StundenWindows 10

Windows 10 on ARM ist ja eine neue Variante, die Microsoft im Verbund mit Geräteherstellern am Markt etablieren will. ...

Microsoft
TV-Tipp: Das Microsoft-Dilemma
Information von kgborn vor 23 StundenMicrosoft15 Kommentare

Aktuell gibt es in Behörden und in Firmen eine fatale Abhängigkeit von Microsoft und dessen Produkten. Planlos agieren die ...

Heiß diskutierte Inhalte
Server
Route-Befehl Unterstützung (unter CMD)
gelöst Frage von FKRR56Server36 Kommentare

Guten Tag , i.M. habe ich Probleme über den CMD-Route-Befehl ein Routing auf einen entfernten Server zuzulassen. Der Server ...

Windows 10
Windows 10 (1709) Tastur und Maus wieder einschalten?
Frage von LochkartenstanzerWindows 1028 Kommentare

Moin, Ich habe von einem Kunden einen Win10-Rechner bekommen, bei dem weder Tastatur noch Maus geht. Die Hardware funktioniert ...

Humor (lol)
Was könnte man mit einem Server machen? Idee gesucht
Frage von 2SeitenHumor (lol)15 Kommentare

Hey Zusammen Ich habe einen alten HP G2 Rackserver zu Hause rumliegen. 28GB Ram, 1xAMD Prozi mit etwa 2GHz. ...

Firewall
RB2011 Firewall Rule eine bestimmte Mac oder IP Adresse nicht zu blockieren
Frage von lightmanFirewall15 Kommentare

Hallo liebes Forum mit ihren Spezialisten. Ich habe meine Firewall so konfiguriert das kein Endgerät ohne meine Speziellen Erlaubnis ...