1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. BigRox

Beiträge von BigRox

  • Frage zu einem Script

    • BigRox
    • 22. Mai 2015 um 13:01

    Hallo Oscar,

    DANKE für die Hilfe :thumbup: .

    Auf die Idee, es einmal mit einem transparenten Hintergrund zu versuchen, bin ich nicht gekommen.
    (bei den Verknüpfungspfeilen von Windows, wird es ja auch so gemacht).

    Manchmal braucht man eben einen kleinen "Schubs" um auf die Lösung zu kommen.


    MfG:
    BigRox

  • Frage zu einem Script

    • BigRox
    • 21. Mai 2015 um 18:58

    Hallo Bugfix,
    jetzt sieht das ganze so aus:

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    Opt("MouseCoordMode", 2)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Die GUI erstellen.
    $GUI = GUICreate("Form1", 600, 500, -1, -1)
    GUISetBkColor(0x6791C9)
    ; Ein Label in der GUI erstellen.
    $Label1 = GUICtrlCreateLabel("Nur ein Test", 64, 32, 468, 42, BitOR($SS_CENTER, $SS_SUNKEN, $WS_BORDER), $WS_EX_CLIENTEDGE)
    GUICtrlSetFont($Label1, 18, 800, 0, "Times New Roman")
    GUICtrlSetBkColor($Label1, 0x00FF00)
    ; Ein Label in der GUI erstellen.
    $Label2 = GUICtrlCreateLabel("", 64, 72, 468, 324, BitOR($SS_CENTER, $SS_SUNKEN, $WS_BORDER), $WS_EX_CLIENTEDGE)
    GUICtrlSetBkColor($Label2, 0x00FF00)
    ; >> LABEL muss inaktiv sein!!
    GUICtrlSetState($Label2, $GUI_DISABLE)
    ; Einen Button in dem Label erstellen.
    $Button1 = GUICtrlCreateButton("Klick mich.", 176, 176, 209, 81)
    GUICtrlSetBkColor($Button1, 0xFF0000)
    ; Die GUI anzeigen.
    GUISetState(@SW_SHOW, $GUI)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While 1
    $Msg = GUIGetMsg()
    Switch $Msg
    Case $GUI_EVENT_CLOSE
    ExitLoop
    Case $Button1
    MsgBox(0, "", "Treffer !", 1)
    EndSwitch
    WEnd
    GUIDelete($GUI)
    Exit

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit]

    Ohne Text geht das gut, aber mit einem Text in Label zwei, wird auch der Text immer grau. Die Lösung währen zwei Labels (eins aktiv und das andere deaktiv)
    Das einzige, was mich jetzt noch etwas stört, ist der Rahmen zwischen den beiden Labels.
    Irgendwie währe es schöner, wenn es so aussehen würde, als wenn der Text (Nur ein Test), ohne Trennlinie in dem Label zwei stehen würde.
    Oder kann man auch irgendwie auswählen, welcher Rahmen dargestellt werden soll (Label eins ohne den unteren Rahmen und Label zwei ohne den oberen Rahmen und dann ganz aneinander schieben).


    MfG:
    BigRox

  • Frage zu einem Script

    • BigRox
    • 21. Mai 2015 um 14:24

    Hallo BugFix,
    wie erstelle ich anders einen Button mit einer farbigen Umrahmung in einer andersfarbigen GUI ?


    Hallo Kanashius,
    probiers mal mit:

    26 Case $Button1

    aus und du wirst sehen, warum ich die Position des Buttons testen muss.

    Ich kann nur ein klicken auf das Label erkennen und auch wenn ich auf den Button klicke, erkenne ich nur den Klick auf das Label.

    Ich bin mir nur nicht sicher, ob das wirklich so sicher funktionieren kann, oder, ob das mit den zwei Controls übereinander nur zufällig funktioniert.

    MfG:
    BigRox

  • Frage zu einem Script

    • BigRox
    • 21. Mai 2015 um 13:10

    Hallo,
    ich habe da ein kleines Script geschrieben bei dem ich nicht weiß, ob man das so machen kann.

    Zuerst mal eine kleine Beschreibung, was ich will
    Ich will in einer GUI ein farbige Fläche erzeugen, in der sich ein andersfarbiger Button befindet.
    Es soll aber nur dann etwas geschehen, wenn ich den Button anklicke.

    Ich habe also zwei Controls übereinander erstellt, von dem ich aber nur das anklicken des Buttons auswerten will.

    Hier mein Script zum testen:


    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>#include <GUIConstantsEx.au3>#include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    Opt("MouseCoordMode", 2)
    ; Die GUI erstellen.
    $GUI = GUICreate("Form1", 600, 500, -1, -1)
    GUISetBkColor(0x6791C9)
    ; Ein Label in der GUI erstellen.
    $Label1 = GUICtrlCreateLabel("Nur ein Test", 64, 72, 468, 324, BitOR($SS_CENTER, $SS_SUNKEN, $WS_BORDER), $WS_EX_CLIENTEDGE)
    GUICtrlSetBkColor($Label1, 0x00FF00)
    ; Einen Button in dem Label erstellen.
    $Button1 = GUICtrlCreateButton("Klick mich.", 176, 176, 209, 81)
    GUICtrlSetBkColor($Button1, 0xFF0000)
    ; Die Position und die Größe des Buttons ermitteln.
    $Test = ControlGetPos($GUI, "", $Button1)
    ; Die GUI anzeigen.
    GUISetState(@SW_SHOW, $GUI)
    While 1
    ; Die aktuelle Mausposition ermitteln.
    Local $Pos = MouseGetPos()
    $Msg = GUIGetMsg()
    Switch $Msg
    Case $GUI_EVENT_CLOSE
    ExitLoop
    Case $Label1
    ; Die aktuelle Mauszeigerposition mit der Position und der Größe des Buttons vergleichen.
    If $Pos[0] > $Test[0] And $Pos[0] < ($Test[0] + $Test[2]) And $Pos[1] > $Test[1] And $Pos[1] < ($Test[1] + $Test[3]) Then
    MsgBox(0, "", "Treffer !", 1)
    Else
    MsgBox(0, "", "Daneben !", 1)
    EndIf
    EndSwitch
    WEnd
    GUIDelete($GUI)
    Exit

    [/autoit]

    Es funktioniert zwar, aber ich bin mir nicht sicher, ob das nicht nur Zufall o.ä. ist.

    Kann man das also wirklich so machen, oder gibt es da eventuell noch eine bessere Lösung ?


    MfG:
    BigRox

  • Frage zu SciTE

    • BigRox
    • 15. Mai 2015 um 11:29

    Hallo Raupi,

    Danke für den Tipp !
    Dann ist eigentlich ja auch klar, warum dann das AutoIt-Info-Tool funktioniert. Ich starte das ja auch außerhalb von SciTE (ich habe mir dafür eine Verknüpfung in der Schnellstartleiste angelegt).

    Für die anderen Tools, werde ich mir also auch etwas einfallen lassen, um die schnell zu erreichen.
    Die Verknüpfungen in SciTE kann man dann ja eigentlich auch deaktivieren, da man die ja sowieso nicht benutzen kann.
    Dadurch würde das Menü "Extras" in SciTE auch etwas kürzer.

    MfG:
    BigRox

  • Frage zu SciTE

    • BigRox
    • 14. Mai 2015 um 13:31

    Hallo,
    ich habe da mal eine Frage zu dem SciTE-Editor.

    Wenn ich in SciTE ein Script öffne. Es muss kein bestimmtes Script sein, es muss nur irgendetwas mit F5 ausführbares sein Z.B. ein Beispiel aus der Hilfe zum erstellen einer GUI.
    Wenn ich dann den Koda-Formdesigner aufrufe so erscheint auch das Fenster des Formdesigners.
    Dann klicke ich, im Formdesigner, oben auf die Minimieren-Schhaltfläche. Und sofort wird das Fenster minimiert und nur noch als Symbol in der Taskleiste angezeigt.
    Dadurch kann ich wieder mein Script sehen und es ist auch markiert.

    Nur mit F5 erneut ausführen, kann ich es nicht und auch ein anderes Tool von Scite aurufen z.B. den Code Wizard, geht auch nicht.
    Erst wenn ich den Formdesigner komplett beende, geht alles wieder.

    Kann man das eigentlich irgendwie ändern, sodass ich mein Script ausführen kann obwohl der Formdesigner noch als Symbol in der Taskleiste angezeigt wird ?
    So wie z.B bei dem AutoIt-Info-Tool, dass kann ich ja in die Taskleiste minimieren und trotzdem kann ich mein Script in SciTE starten (und auch andere Scite-Tools aufrufen).

    MfG:
    BigRox

  • Frage zu einem Befehl

    • BigRox
    • 27. April 2015 um 12:30

    Hallo Make-Grafik,
    Danke für die Erklärung :thumbup: .

    Damit "räumt" man also alles wieder schön auf, wenn die Message bearbeitet wurde.
    Entweder man macht es selber, oder man lässt es mit "Return $GUI_RUNDEFMSG" machen.

    Und das ist dann einfach auch ein sauberer Programmierstiel, da man damit schon mal eine Fehlerquelle ausschließt.
    (so etwa, wie mit sauberer Variabledeklaration, es geht zwar auch ohne, aber mit geht es viel besser).

    Das mit C++ kenne ich auch, ein Bekannter von mir macht damit rum.
    Schöne, schnelle Programme schreiben, dass ist kein Problem für den, aber wenn es um die GUI'*s dafür geht, dann verzweifelt der daran.
    Ich habe dem schon oft gesagt, er solle sich doch mal eine andere Programmiersprache nur zum erstellen der GUI's suchen und versuchen diese GUI's in C++ einzubinden (mit AutoIt erstellte GUI's müsste man doch auch in C++ einbinden können). Aber dafür hat der anscheinend keine Lust, dann muss er sich halt weiter mit C++ und GUI's rumärgern :D .

    MfG:
    BigRox

  • Frage zu einem Befehl

    • BigRox
    • 26. April 2015 um 14:17

    Hallo,
    ich habe da mal wieder eine Frage zu der Sache.

    Was ist eigentlich der "AutoIt-interne Message-Handler" der im Beispiel mit:


    "Return $GUI_RUNDEFMSG"

    aufgerufen wird ?
    Die Registrierung der Nachricht bleibt doch bestehen und die registrierte Funktion wird wieder aufgerufen, wenn die Nachricht nochmals erscheint.
    Was sind den diese "Autoit3 internal message commands" ?
    Oder setzt man damit alles wieder sauber auf Start, falls die Nachricht doch nicht von der Funktion verarbeitet werden konnte.

    MfG:
    BigRox

  • Frage zu einem Befehl

    • BigRox
    • 23. April 2015 um 16:18

    Hallo BugFix,

    Zitat von BugFix

    Anders sieht es aus, wenn du z.B. fertige Skripte einbindest, die ihrerseits schon mit GuiRegisterMessage arbeiten. In diesem Fall kannst du GuiRegisterMsg NICHT benutzen (da ja nur eine Funktion mit einer Message verknüpft werden kann).

    Genau, dass ist mein Problem. Ich binde ein fertiges Script ein, das auch mit der Windows-Message $WM_NOTIFY arbeitet.
    Wenn ich das ganze., bis jetzt, richtig verstanden habe, müsste das erste Script doch irgendwie Windows mitteilen, wohin es die angegebene
    Message weiterleiten soll.

    Das erste Script sagt Windows also ungefähr: "Wenn die Nachricht $WM_NOTIFY auftritt, dann her damit, da warte ich nämlich schon drauf".

    Sobald im ersten Script der Befehl "GUIRegisterMsg(...)" erfolgreich ausgeführt wurde, müsste doch irgendwo auch etwas stehen.
    Und genau dies müsste man eigentlich auch abfragen können und zwar, bevor die Windows-Message überhaupt mal aufgetreten ist.


    MfG:
    BigRox

  • Frage zu einem Befehl

    • BigRox
    • 23. April 2015 um 12:35

    Hallo Andy,
    irgendwie verstehe ich das mit den Windows Messages anscheinend nicht so richtig.

    Ich brauche wohl nur die damit verknüpfte Funktion, mit "GUIRegisterMsg" anzugeben und die vier Parameter (hWnd, Msg...)
    kommen von Windows, damit die Funktion "weiß", was in welchem Fenster passiert ist und darauf auch richtig reagieren kann.

    Mit dem von dir geposteten Beispiel, könnte ich also nach dem Funktionsaufruf zuerst mal abfragen, ob z.B. die Nachricht auch in dem richtigen Fenster aufgetreten ist und erst dann die restliche Funktion ausführen.
    Und wenn es das falsche Fenster ist, wird die Funktion einfach nicht ausgeführt.

    Nur das Problem ist dabei, die Message muss erstmal auftreten, damit die Abfrage des Fensters auch stattfindet.
    Und genau dass ist mein Problem.

    Ich möchte den Namen der verknüpften Funktion ermitteln ohne das die Funktion zuerst mal aufgerufen wird.

    So etwas wie: $Name = GetGUIRegisterMsg($WM_NOTIFY) und zurückgegeben wird mir der Name der Funktion.


    @Raupi
    Das ganze Scrip umfasst etwa 3000 Zeilen und massenweise Includes.
    Die Funktion zur Ordnerauswahl wird auch in einigen anderen Scripten verwendet und kann somit nicht so einfach mit einer anderen Funktion zusammengefasst werden, da ich sie eben universell verwendbar halten möchte.
    Das mehrere Funktionen für die gleiche Message nicht so gut funktioniert, kann ich mir schon vorstellen (der PC kann ja auch nicht hellsehen :D ) und deshalb versuch ich genau das irgendwie zu verhindern.
    Mit ein Paar Befehlen im eigentlichen Script, geht es auch (vorm Funktionsaufruf um registrieren und danach wieder zurück), nur dann ist es auch nur eine Frage der Zeit, wann ich wieder genau das Problem haben werde.


    Komisch, heute funktioniert das mit Editieren usw. wieder, vielleicht lag an einem Cookie, die habe ich nämlich vorher mal gelöscht(ich konnte mich sonst nicht mehr anmelden).


    MfG:
    BigRox

  • Frage zu einem Befehl

    • BigRox
    • 22. April 2015 um 16:51

    Hallo,
    ich habe da mal eine Frage zum „GUIRegisterMsg“-Befehl.

    Ich habe ein Script, in dem ist die Windows-Message „$WM_NOTIFY“, mit dem Befehl
    “GUIRegisterMsg($WM_NOTIFY, "WM_Notify_Events")”,
    auf die Funktion “WM_Notify_Events” registriert.

    Nun rufe ich in dem Script eine weitere Funktion zur Ordnerauswahl auf und die registriert
    die Windows-Message „$WM_NOTIFY“ mit dem Befehl:
    GUIRegisterMsg($WM_NOTIFY, "__WM_NOTIFY")
    auf eine andere Funktion.


    Wenn diese Funktion zum eigentlichen Script zurückkehrt (mit RETURN und dem ausgewählten Pfad), funktioniert das Script natürlich nicht mehr.

    Es funktioniert erst wieder, nachdem ich die Windows-Message „$WM_NOTIFY“, wieder auf die Funktion „WM_Notify_Events“ registriere.

    Nun die Frage:
    Kann man irgendwie abfragen, auf welche Funktion eine Windows-Message registriert ist ?

    Wenn man die damit, beim Funktionsaufruf (die Ordnerauswahl) die ursprüngliche Registrierung ermitteln und speichern würde, und diese Registrierung am Ende wiederherstellen würde, so müsste das ganze auch funktionieren.

    Ich weiß, mein Post sieht etwas sehr sonderbar aus, aber leider funktioniert bei mir das ganze mit Editieren und Formatieren usw. nicht. (Browser: Opera 12.16)

    Auch den Post zuerst in MS-Word schreiben und dann hier rein kopieren, geht nicht.

    MfG:
    BigRox

  • [Snippet] Avast! AdBlocker

    • BigRox
    • 4. Februar 2015 um 11:17

    Hallo Dankeschön,
    das wundert mich auch etwas.
    Ich verwende nämlich auch den Avast! Free Antivirus, aber Werbe-Popups habe ich da auch ohne Addblocker noch nie gesehen.

    Oder meinst du etwa die Meldungen wegen einer neuen Version von Avast! ? Die kommen auch gelegentlich bei mir, aber die stören mich nicht.
    Wenn ich den "Software-Checker" in den Einstellungen (Standardmäßig aktiviert) aktiviert lasse, so prüft Avast! in gewissen Zeitabständen meine Software und meldet sich laufend, wenn etwas nicht mehr aktuell ist. Das kann einen wirklich auch nerven und deswegen habe ich das abgestellt

    Irgendwo kann man bei Avast! auch einstellen, wie lange ein Popup eingeblendet werden soll.
    Auch die Einblendungen usw. von sozialen Netzwerken kann man irgendwo in den Einstellungen abstellen.

    MfG:
    BigRox

  • Kontaktlinsen ade :(

    • BigRox
    • 7. Januar 2015 um 12:08
    Zitat von General Kaboom

    Warum sonst soll man wohl nur mit Schutzbrille löten? ;)

    Du wirst aber auch kaum einen finden, der das macht (höchstens einer der Wasserrohre zusammen lötet).
    Vor allem wird wohl kaum einer eine Schutzbrille über seine normale Brille anziehen (das geht auch meistens gar nicht).

    Und eine Schutzbrille, in der richtigen Stärke, sieht auch nicht so gut aus (jedenfalls stehen auch die meisten Frauen nicht so darauf, wenn man so ein Teil auf der Nase hat :D).


    MfG
    BigRox

  • Kontaktlinsen ade :(

    • BigRox
    • 6. Januar 2015 um 19:32

    Hallo,
    ich habe seit ich 12 war, eine Brille.
    Die habe ich damals verschrieben bekommen und sofort auch getragen und seitdem gehört das Teil für mich, einfach dazu.
    Irgendwann mal eine neue und weiter gehts.
    Morgens auf die Nase und Abends wieder runter (zwischendurch nur runter, wenn sie zu sehr verdreckt ist).
    Ich hatte auch nie mal dran gedacht auf Kontaktlinsen umzusteigen.

    Ich bin eigentlich ganz zufrieden, mit dem Teil und gelegentlich sogar ganz froh, dass ich so ein Teil auf der Nase habe.
    Z. B. wenn schon wieder so ein A...L... eine Platine mit Spiritus saubergemacht hat und einem dann das Ding zum reparieren in die Hand drückt und nichts sagt,
    wenn man dann daran lötet, macht es laut BUM und man hat das Lötzinn an den Brillengläsern hängen...
    Bei Kontaktlinsen, würde dann wohl schon etwas unschönes passieren (jedenfalls nur mit laut fluchend die Brille putzen, währe das wohl nicht erledigt).

    MfG
    BigRox

  • GUID eines Energieschemas auslesen

    • BigRox
    • 6. Januar 2015 um 13:29

    Hallo Andy,
    unter StderrRead(), habe ich natürlich nicht nachgesehen und da steht das in den Bemerkungen.

    Das sollte man auch bei StdoutRead() in die "Bemerkungen" schreiben.
    Zudem sollte man die Beispiele zu beiden Funktionen auch so ändern.

    Anscheinend ist es ja nur Zufall o.ä., dass mein Windows XP-Script überhaupt ohne Schleife funktioniert.

    Mfg
    BigRox

  • GUID eines Energieschemas auslesen

    • BigRox
    • 5. Januar 2015 um 18:22

    Hallo Andy,
    ich habe eben mal deine Lösung probiert.
    Klappt hervorragend, DANKE dafür !

    Aber irgendwie ist es schon sonderbar, dass das hier bei Windows XP funktioniert:

    Spoiler anzeigen
    [autoit]


    Func...
    ....
    ; Den Status des Adapters auslesen.
    $State = Run(@ComSpec & ' /c "devcon status "' & $Device, @SystemDir, @SW_HIDE, 2)
    ; Eine Endlosschleife starten.
    While 1
    $Message = StdoutRead($State)
    ; Die Endlosschleife verlassen, wenn eine Textzeile gefunden wurde, oder keine weiteren Zeilen mehr vorhanden sind.
    If @error Or $Message <> "" Then
    ExitLoop
    EndIf
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    ; Die Länge des zurückgegebenen Textes ermitteln um festzustellen, ob das Gerät überhaupt vorhanden ist.
    ; Der WLAN-Adapter ist nicht vorhanden.
    If StringLen($Message) < 30 Then
    GUICtrlSetState($Label_2, $GUI_SHOW)
    ; Die Funktion vorzeitig verlassen.
    Return
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    ; In der gefundenen Textzeile nach der Zeichenfolge "runing" suchen.
    ; Der Adapter ist aktiviert.
    If StringRegExp($Message, "(\Qrunning\E)") Then
    ....

    [/autoit]


    Da kommt doch auch jede Menge Text raus und irgendwo steht da "The Device is runing" drin, wenn der Adapter aktiviert ist.
    Daher habe ich es genau so probiert und das war wohl nichts, da gab es wohl kleinen Unterschied.


    MfG
    BigRox

  • GUID eines Energieschemas auslesen

    • BigRox
    • 5. Januar 2015 um 16:25

    Hallo,
    ich möchte die GUID des momentan aktivierten Energieschemas mit AutoIT auslesen.
    Mein Betriebssystem ist Windows 7 Pro 64-Bit und die AutoIT-Version ist: 3.3.8.1.

    Dafür gibt es ja den Befehl:

    POWERCFG -GETACTIVESCHEME

    in Windows.
    Also habe ich mir damit ein kleines Testscript damit zusammengebaut:

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    $Test = Run(@ComSpec & " /c " & 'POWERCFG -GETACTIVESCHEME', "", @SW_HIDE, 2) ;Nicht die Leerzeichen vor und nach "/c" vergessen!
    While 1
    $GUI = StdoutRead($Test)
    If @error Or $GUI <> "" Then
    ExitLoop
    EndIf
    WEnd
    MsgBox(0, "", $GUI)

    [/autoit]

    Aber das gibt immer nur "GUID des Energieschemas:" aus (der ganze Text währe aber "GUID des Energieschemas: 6863a2cd-9633-4633-adc0-e02640b350d7 (Eigener Energiesparplan)".
    (ohne das ...Or $GUI <> "".... im Script, kommt nur ein leeres Fenster).

    Früher unter Windows XP, hatte ich mal ein ähnliches Script zur abfrage des Zustandes eines WLAN-Adapters.
    Der Konsolenbefehl war zwar anders, aber das mit dem auslesen usw., war etwa gleich.
    Da funktionierte das.

    Geht das bei Windows 7 anders ? Oder sind das irgendwie besondere Zeichen, die man erst noch irgendwie umwandeln muss ?

    MfG
    BigRox

    Edit: AutoIT-Version hinzugefügt.

  • Probleme mit MouseClick

    • BigRox
    • 15. Oktober 2014 um 11:20

    Hallo,
    der Grund, warum ich dieses Script mal geschrieben habe, ist ganz einfach.
    Das Script ist schon einige Jahre alt und damals gab es zwar auch schon diese Silent-Schalter,
    aber die habe da noch nicht so richtig zuverlässig funktioniert.
    Um aber dennoch ein sicher funktionierendes Script zu schreiben, habe ich die "komplizierte" Methode gewählt.

    Und bis heute wahr ich irgendwie zu faul um die Schalter immer wieder auszuprobieren und das Script zu ändern.

    Für IrfanView scheint es mit den Schaltern zu funktionieren, aber irgendwie würde mich eine Lösung für dieses Problem dennoch interessieren,
    da ganz sicher irgendwann auf ein Programm stoße, für das es keine Silent-Schalter gibt.
    Und da das Script dann auch noch unter Windows XP funktionieren sollte, wird es dann auch etwas komplizierter.

    MfG:
    BigRox

    P.S. Eben fällt mir dazu auch noch etwas ein:
    Wenn man die "MouseCoordMode"-Option abhängig vom Betriebssystem ändern würde..., dass könnte funktionieren.
    Das wird jetzt einfach mal ausprobiert.


    Edit vom 16.10.2014:
    Das mit dem "MouseCoordMode" funktioniert leider nicht, der Mouseklick liegt auch dann immer noch etwas zu hoch.

  • Probleme mit MouseClick

    • BigRox
    • 14. Oktober 2014 um 18:28

    Hallo,
    ich habe da ein Problem, mit den Koordinaten für MouseClick.

    Ich habe mir ein Installationsscript für IrfanView geschrieben.
    Dieses Script habe ich unter Windows XP geschrieben und da funktioniert es einwandfrei.
    Leider konnte man die Schaltflächen usw. nur mit dem MouseClick-Befehl bedienen.
    Also das AutoIt-Info-Tool angeworfen um an die richtigen Koordinaten zu gelangen und oben im Script
    Opt("MouseCoordMode", 2)
    eingefügt damit es ordentlich funktioniert.

    Nun bin ich endlich auch mal auf Windows 7 umgestiegen und damit fingen auch die Probleme an.
    Die Maus-Koordinaten stimmen da nicht mehr.
    Weder die Grafikkarte noch die Bild-Auflösung hat sich geändert, nur das Betriebssystem ist anders.

    Unter Windows 7 geht der Klick immer etwas zu "hoch", entweder er geht ganz ins Leere oder auf die falsche Stelle.
    Bei Windows 7 werden die Koordinaten anscheinend vom oberen Rand des Fensters gezählt (also mit Titelleiste) und bei Windows XP wird ohne die Titelleiste gezählt.

    Nun die große Frage:
    Gibt es da noch eine andere Option o.ä. womit man das ändern kann ?
    Eigentlich müsste doch "Opt("MouseCoordMode", 2) = relative Koordinaten zum Anwendungsbereich des aktiven Fensters" immer das selbe sein.
    Sonst müsste man ja alle Scripte mit MouseClick o.ä. ändern und die Scripte würden dann auch nur unter einem bestimmten Betriebssystem funktionieren.

    MfG:
    BigRox

  • Was ist an meinem Rechner nicht richtig?

    • BigRox
    • 15. September 2014 um 19:21

    Hallo YaeroxXO,
    hast du auch mal an das Netzteil gedacht ?
    Derarte Probleme können auch mit einem altersschwachen Netzteil zusammenhängen.
    Die Kondensatoren in dem Teil altern und wenn die altern sinkt die maximale entnehmbare Leistung.
    Wenn du dann daran einen starken Verbraucher (Grafikkarte) betreibst, so bricht die Spannung zusammen und dann BSOD...
    Der Zeitpunkt des Absturzes, ist auch interessant, genau da schaltet die Grafikkarte in einen anderen Modus um und dann steigt auch der Strombedarf, Folge BSOD.

    Steck doch mal eine andere Grafikkarte (mit viel weniger Leistungsbedarf) in den Rechner und versuch es mal damit.
    Wenn es damit geht, liegt es wohl am zu schwachen Netzteil.

    MfG:
    BigRox

    P.S. Noch einige Gründe für so etwas fallen mir gerade noch ein.
    Einige Grafikkarten haben einen extra Stromanschluss und wenn man den vergisst, BSOD...
    Und auch einige Motherbards haben extra Stromanschlüsse, die man nicht vergessen darf, sonst BSOD...

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™