Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.
-
@Swordfish sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
@bruder sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
Ich habe in jedem Browser ein Spiel laufen und das Programm soll die Spiele neu starten, wenn sie beendet wurden
Dann kennst Du doch bestimmt die Titel der Fenster.
FindWindow()
ftw.Das ist ein nsfw Spiel das keinen Titel setzt.
-
@hustbaer sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
Das klingt mir jetzt eher nach einem Fall für etwas wie CEF (ChromiumEmbeddedFramework). Gibt auch nen schönen .NET Wrapper dafür: https://cefsharp.github.io/
Das wäre natürlich am geilsten. Aaaaber die Zeit mich da reinzufuchsen.... die fehlt z.Zt.
-
@bruder sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
@hustbaer sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
Das klingt mir jetzt eher nach einem Fall für etwas wie CEF (ChromiumEmbeddedFramework). Gibt auch nen schönen .NET Wrapper dafür: https://cefsharp.github.io/
Das wäre natürlich am geilsten. Aaaaber die Zeit mich da reinzufuchsen.... die fehlt z.Zt.
ich übersetze das mal: ich bin einfach scheiße faul und habe da keine lust drauf!
-
@bruder Wie viel Zeit hast Du schon damit versch**** das ver***** Fenster zu finden??
-
Ich hatte damals mit CEF recht schnell einen funktionierenden Prototyp. Kommt natürlich drauf an was man alles erlauben/verbieten bzw. gegenüber dem Standardverhalten ändern möchte. Aber ein Versuch schadet mMn. nicht.
-
@Swordfish sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
@bruder Wie viel Zeit hast Du schon damit versch**** das ver***** Fenster zu finden??
Zu viel. Mit Spy++ und so. Ich kann natürlich nicht ausschließen, dass ich Fehler gemacht habe. Bin zurzeit recht ungeduldig was programmieren betrifft.
-
Wenn Du möglichst genau beschreibst was Du erreichen willst (NICHT wie) dann kann Dir vermutlich besser gehelft werden.
-
@hustbaer sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
Ich hatte damals mit CEF recht schnell einen funktionierenden Prototyp. Kommt natürlich drauf an was man alles erlauben/verbieten bzw. gegenüber dem Standardverhalten ändern möchte. Aber ein Versuch schadet mMn. nicht.
Das stimmt, ein Versuch schadet nicht. Versuch macht "kluch" lol.
Werde mir auf jeden Fall deinen Link mal speichern und in der nächsten, längeren Freizeit mal reinschauen, danke dafür.
-
@Swordfish sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
Wenn Du möglichst genau beschreibst was Du erreichen willst (NICHT wie) dann kann Dir vermutlich besser gehelft werden.
Mir ist schon ganz schön dolle gehilfert worden gehabt sein tun freu
Deinen Tipp und den von Wade habe ich verfolgt, und so. Es läuft. Danke.
-
@Wade1234 sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
@bruder sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
@hustbaer sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
Das klingt mir jetzt eher nach einem Fall für etwas wie CEF (ChromiumEmbeddedFramework). Gibt auch nen schönen .NET Wrapper dafür: https://cefsharp.github.io/
Das wäre natürlich am geilsten. Aaaaber die Zeit mich da reinzufuchsen.... die fehlt z.Zt.
ich übersetze das mal: ich bin einfach scheiße faul und habe da keine lust drauf!
6 setzen!
fg
-
Ich hatte damals mit CEF recht schnell einen funktionierenden Prototyp. Kommt natürlich drauf an was man alles erlauben/verbieten bzw. gegenüber dem Standardverhalten ändern möchte. Aber ein Versuch schadet mMn. nicht.
Und schon geht der Spaß los!
Fehler CS0234 Der Typ- oder Namespacename "WinForms" ist im Namespace "CefSharp" nicht vorhanden. (Möglicherweise fehlt ein Assemblyverweis.) CefSharp.MinimalExample.WinForms
Hülfäää!
Habe mir das Minimalbeispiel von https://github.com/cefsharp/CefSharp.MinimalExample runtergeladen
-
Hülfäää = Hilfe!
-
push
-
@bruder
Mach den NuGet Package Manager auf. Der sollte dir sagen dass Packages fehlen. Dort klickst du dann auch "ja bitte tu die mal für mich runterladen/wiederherstellen". Das macht der dann auch glatt. Danach kannst du komischerweise erstmal immer noch nicht bauen. Zumindest ging es bei mir nicht - immer noch die selben Fehler. Ich musste erst noch das Projekt explizit "cleanen". Danach ging das Bauen dann auf einmal.Was lernen wir daraus: immer erst nen Clean Build probieren bevor man verzweifelt/fragt. Und "Clean Build" heisst nicht "Rebuild" sondern vorher auf "Clean" und danach auf "Build" klicken. Ja, ernsthaft. Und wenn das auch nicht hilft als nächste den ganzen Itermediate und Output-Folder löschen und dann nochmal probieren. Und ja, auch das meine ich ernst. Das ist nicht bloss ein "one in a million" Zufall dass das hier funktioniert hat - sowas kommt öfter mal vor. Wenn du lang genug programmiert hast wirst du vermutlich auch wissen wieso - weil du dann selbst mal Programme geschrieben hast die Fehler hatten die mit ähnlichen Workarounds zu beheben waren.
Falls du auch das WPF Sample bauen willst wirst du noch das brauchen: https://stackoverflow.com/questions/8360209/how-to-add-system-windows-interactivity-to-project/56240223#56240223
Würde aber vorschlagen dass du dir das erstmal sparst, ist ein bisschen mehr Fummelei. WPF ist nicht sehr einsteigerfreundlich.
-
@bruder sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
push
pop
-
queued
-
Ich habe das Minimalbeispiel zum Laufen bekommen jippiee. Das Problem waren die Konfigurationseinstellungen, sie standen auf "AnyCpu", das mochte der Compiler gar nicht.
Nun habe ich aber ein neues Problem!
Wenn ich von einer Form an den Browser mehrere Mauscklicks sende, indem ich SendMouseClickEvent aufrufe, wird immer bloß der erste Klick ausgeführt. Mist!
Weiß jemand was ich da falsch machen könnte? Oder sollte ich dafür vllt. einen neuen Thread eröffnen?
-
evtl. eine verzögerung zwischen den beiden mausklicks einfügen?
-
Habe ich, es wird leider nur einmal geklickt.
-
@bruder sagte in Mit einem C# Konsole Programm abwechselnd zwei Browser in den Vordergrund holen.:
Nun habe ich aber ein neues Problem!
Wenn ich von einer Form an den Browser mehrere Mauscklicks sende, indem ich SendMouseClickEvent aufrufe, wird immer bloß der erste Klick ausgeführt. Mist!
Weiß jemand was ich da falsch machen könnte? Oder sollte ich dafür vllt. einen neuen Thread eröffnen?Was hat das mit dem Rest des Themas zu tun? Mach am besten einen neuen Thread dafür auf. Und erklär dann auch gleich, wie du das machst und wozu.
Edit: Man sollte nicht die Beiträge von alt zu neu lesen. Neuer Thread ist hier: https://www.c-plusplus.net/forum/topic/350147/cefsharp-winforms-automatisierte-mausklicks-ein-klick-fehlt