Unerfahren und wissbegierig... (Zugriff auf 3rd-parties)
-
Hallo zusammen,
ich habe ein Problem dessen Lösung in c oder c++ zu liegen scheint; habe davon aber keine Ahnung... Sehr wohl sind mir loops und diverse andere Dinge aus php, bzw. sql bekannt, in c kenne ich mich aber nicht aus.Folgendes hätte ich gerne maschinell erledigt:
- Zyklisches(nicht periodisches) klicken mit der linken Maustaste auf einem bestimmten Pixelbereich
- Prüfen ob sich darauf hin eine Variable ändert(dies ginge sogar grafisch; also ebenfalls ein Pixelbereich der mit dem Vorangegangenen verglichen wird. Es müsste kein Wert geprüft werden)
- Wenn sich die Variable verändert: Linksklick auf einen bestimmten Pixelbereich danach 2 mal bestätigen(also enter) klicken (diesen Vorgang in kurzen, d.h. z.B. 0,001-0,005 Sekunden, zyklischen Zeitintervallen ein paar mal wiederholen. Sagen wir 7-10mal; die intervalle dürfen nicht gleich lang sein. "Randoms between" wären super.)Dann das ganze von vorne, also
enum SystemMetric{ SM_CXSCREEN = 0, SM_CYSCREEN = 1, } [DllImport("user32.dll")] static extern int GetSystemMetrics(SystemMetric smIndex); int CalculateAbsoluteCoordinateX(int x){ return (x * 65536) / GetSystemMetrics(SystemMetric.SM_CXSCREEN); } int CalculateAbsoluteCoordinateY(int y){ return (y * 65536) / GetSystemMetrics(SystemMetric.SM_CYSCREEN); } public static void ClickLeftMouseButton(int x, int y){ INPUT mouseInput = new INPUT(); mouseInput.type = SendInputEventType.InputMouse; mouseInput.mkhi.mi.dx = CalculateAbsoluteCoordinateX(x); mouseInput.mkhi.mi.dy = CalculateAbsoluteCoordinateY(y); mouseInput.mkhi.mi.mouseData = 0; mouseInput.mkhi.mi.dwFlags = MouseEventFlags.MOUSEEVENTF_MOVE |MouseEventFlags.MOUSEEVENTF_ABSOLUTE; SendInput(1, ref mouseInput, Marshal.SizeOf(new INPUT())); mouseInput.mkhi.mi.dwFlags = MouseEventFlags.MOUSEEVENTF_LEFTDOWN; SendInput(1, ref mouseInput, Marshal.SizeOf(new INPUT())); mouseInput.mkhi.mi.dwFlags = MouseEventFlags.MOUSEEVENTF_LEFTUP; SendInput(1, ref mouseInput, Marshal.SizeOf(new INPUT())); } int main(){ for(int i = 0; i <= 5; ++i){ $x=array($current, $new); foreach ($x as $value){ if ($value != $current){ UINT WINAPI SendInput( _In_ UINT nInputs, _In_ LPINPUT pInputs, _In_ int cbSize ); int sub_main_a(){ UINT WINAPI SendInput(VK_EXECUTE); Sleep(500); } int sub_main_b(){ UINT WINAPI SendInput(VK_EXECUTE); Sleep(500); } // Linksklick auf einen bestimmten Pixelbereich danach 2 mal bestätigen(also enter) klicken (diesen Vorgang in kurzen, d.h. z.B. 0,001-0,005 Sekunden(Random), zyklischen Zeitintervallen ein paar mal wiederholen. Sagen wir 7-10mal(Random) $new = $current; } } } Sleep(2000); }
Auch der Sleep wäre hilfreich als Random
Wie gesagt, habe keine Ahnung von c++, das hier ist ein unbrauchbarer PHP-C++(sleep)Code-Mix. Soll nur veranschaulichern was ich so in etwa vor habe. Ach ja, eine start/stop-Funktion per Tastenkombination müsste da auch bei sein.
Benötige Hilfe für den Ansatz.
MfG,
afs
-
Schau dir am besten AutoIT o.Ä. an, da musste nicht viel können um so etwas zu programmieren.
€: Oder du lernst gescheit C++, wobei ich nicht glaube, dass du das bezweckst.