ich verwende Dragon Professional (individual) Version 14.000.000.212 und habe mir gerade ein Befehl erstellt. Bei diesen habe ich eine Maus Bewegung aufgezeichnet. Leider ist beim abrufen des Befehlsdie Geschwindigkeit der Mausbewegung eine Katastrophe. Gibt es eine Möglichkeit diese erheblich zu erhöhen? Selbst unter Optionen (Karteireiter Befehle) habe ich die Geschwindigkeit auf 25 gestellt. Leider ist dennoch die Geschwindigkeit sehr sehr langsam, hat jemand für mich eine Lösung?
Wenn Sie dafür, wie zu vermuten, den Makro-Rekorder verwendet haben: den kenne ich praktisch nicht, habe ihn noch nie verwendet und weiß nur darüber, dass aufgezeichnete Makros extrem langsam in der Ausführung sind.
Besser wäre ein Advanced Scripting, und sicherlich schneller. Wie sieht es aus, bekommt man bei einem aufgezeichneten Makro irgendwie den Quellcode zu sehen? Wenn ja, zeigen Sie uns den Code und wir machen ein Skript daraus.
Sonst erklären Sie uns, was das Makro machen soll, und wir versuchen es damit.
_______________________________________
Dragon Professional 16 auf Windows 10 Pro und Windows 11 SpeechMike Premium (LFH3500); Office 2019 Pro + Office 365 (monatliches Abo) HP ZBook Fury 17 G8 - i7-11800H - 24 MB SmartCache - 32 GB RAM - 1 TB SSD
Zitat von R.WilkeWenn Sie dafür, wie zu vermuten, den Makro-Rekorder verwendet haben: den kenne ich praktisch nicht, habe ihn noch nie verwendet und weiß nur darüber, dass aufgezeichnete Makros extrem langsam in der Ausführung sind.
Die Geschwindigkeit der wiedergegebenen Mausbewegungen entspricht der Aufzeichnungsgeschwindigkeit. Beim Aufzeichnen werden allerdings eine Unmenge kurzer Mausbewegungen abgespeichert. Schaut man sich den aufgezeichneten Befehl im Befehlseditor an, könnte man auf die Idee kommen, die meisten dieser Mausbewegungen zu löschen. In der Tat wird der Befehl dann wahnsinnig schnell ausgeführt.
Dem sei noch hinzugefügt, dass die Aufzeichnung von Mausbewegungen die unsicherste Methode ist - auch wenn bei der Ausführung des Befehls sowohl Existenz als auch Position des Fensters berücksichtigt werden, wird aber nicht geprüft, ob die Mausbewegungen nicht auch zu Positionen außerhalb des Fensters führen und dort ungewollte Aktionen ausgelöst werden.
Kurzum: die sichersten Methode besteht in die Aufzeichung von Tastendrücken (bzw. Schritt-für-Schritt-Befehlen) oder Skripten. Gruß, Pascal
Vielleicht noch folgende kurze Ergänzung zu den weisen Worten von Pascal:
Diese unterstellen, dass es outman gar nicht um die Bewegung, sondern um die Positionierung der Maus an einer bestimmten Stelle geht, um dort eine Aktion auszulösen. Wegen der Vorteile von Tastaturbefehlen gibt es dafür nur selten Bedarf, aber manchmal eben doch.
Dafür eignet sich hervorragend der Skriptbefehl SetMousePosition. Outman: Geben Sie diesen Ausdruck einfach mal in die Suchfunktion der Dragon-Hilfe ein.
Was noch besser ist: Hier im Forum wurde mal ein Skript veröffentlicht, welches die Hinzufügung eines Mausbefehls für eine aktuelle Position vereinfacht:
Zitat von MeinhardWas noch besser ist: Hier im Forum wurde mal ein Skript veröffentlicht, welches die Hinzufügung eines Mausbefehls für eine aktuelle Position vereinfacht:
Type RECT Links As Long Oben As Long Rechts As Long Unten As Long End Type
Type POINTAPI x As Long y As Long End Type
Declare Function GetCursorPos Lib "user32" Alias "GetCursorPos" (lpPoint As POINTAPI) As Long
Declare Function GetWindowRect Lib "user32" Alias "GetWindowRect" (ByVal hwnd As Long, _ lpRect As RECT) As Long Declare Function GetForegroundWindow& Lib "user32" ()
Function GetWinCurPos(hwnd As Long) As POINTAPI Dim pt As POINTAPI Dim wRect As RECT Dim result As POINTAPI GetCursorPos pt GetWindowRect hwnd, wRect result.x = pt.x - wRect.Links result.y = pt.y - wRect.Oben GetWinCurPos = result End Function
Sub Main Dim EC As New DgnEngineControl Dim hwnd As Long Dim result As POINTAPI Dim clip As String hwnd = GetForegroundWindow result = GetWinCurPos(hwnd) clip = "SetMousePosition 1," & result.x & "," & result.y EC.DlgShow(dgndlgNewCommandWizard,0, ,0) Wait 0.4 SendKeys"%y" Wait 0.2 SendKeys"{Home}{Down 3}{Tab 2}" Wait 0.2 SendKeys clip Wait 0.1 SendKeys"~Wait 0.2~ButtonClick 1,1" Wait 0.1 SendKeys "%n" End Sub
... wo wir gerade so nett beisammen sind: viele Wege führen zu den Koordinaten der Cursor-Position, u.a. auch diverse Programme, wo eine entsprechende Anzeige eingebaut ist. Eine recht preiswerte Lösung bietet dieses kleine, kostenlose Tool an:
EXE-Datei herunter laden und installieren. Programm starten. Fertig.
_______________________________________
Dragon Professional 16 auf Windows 10 Pro und Windows 11 SpeechMike Premium (LFH3500); Office 2019 Pro + Office 365 (monatliches Abo) HP ZBook Fury 17 G8 - i7-11800H - 24 MB SmartCache - 32 GB RAM - 1 TB SSD