-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
22. Okt 2022
Per default gibt es keine Hotkeys in meiner Klasse, nur wenn man sie aktiviert sind sie da oder ich verstehe die Frage nicht so ganz.
Wenn es um den von mir gewählten Hotkey geht, in der Datei kz.Windows.SnapShot.pas im constructor kann man sich anschauen wie ich da vorgehe und selbst seine Eigenen verwenden.
FHotkeyAll.Hotkey := VK_SNAPSHOT;
FHotkeyAll.Modifier := MOD_ALT;
...
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
21. Okt 2022
Ich bedanke mich fürs testen!
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
21. Okt 2022
Neue Version hochgeladen, der GDI modus ist momentan der einzige mit multimonitor support, ich verstehe die DirectX varianten noch nicht so ganz werde aber versuchen auch diese zu "überreden" :lol:
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
21. Okt 2022
Danke dafür aber wie gesagt, ich habe keine Kapazität dafür frei :oops: :cry:
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
21. Okt 2022
Vielen Dank dafür, ich werde nun die Klasse überarbeiten aber ich vermute mal das nicht alle Varianten damit klar kommen werden, für spätere weitere Tests wäre ich sehr dankbar!
( Da Du irgendwie der einzige bist den es tatsächlich interessiert :lol: )
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
21. Okt 2022
@Torsten: Könntest Du bitte das Programm im Anhang testen und mir Bescheid geben ob es funktioniert? Es sollte "theoretisch" alles knipsen... (nur auf den Knopf drücken und schauen was kommt)
@himitsu: Das mit virtuellen Maschinen ist ein guter Tipp nur leider habe ich momentan keine Kapazitäten dafür frei ein weiteres Windows zu installieren.
//edit anhang entfernt um der DP platz zu sparen
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
20. Okt 2022
Dankeschön für den Test, ich werde ein seperates Projekt vorbereiten was zum testen dient, ich melde mich hier wenn es fertig ist.
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
20. Okt 2022
@Hunni, mich würde brennend interessieren ob auf dem zweiten generell nichts geknipst werden kann?!
Könntest Du mal bitte SHIFT-PRINT was auswählen oder ein fokussiertes Window auf dem zweiten per CTRL-PRINT ausprobieren?
Das wäre echt hilfreich zu wissen was alles betroffen ist, vielen Dank!
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
20. Okt 2022
Erstmal Danke und mit dem "weiss" puh.... es ist doof wenn man selbst keinen zweiten Monitor zum testen hat, ich nutze "GetDesktopWindow" was eigentlich alles darstellt.
Ist denn die Größe wenigstens korrekt oder stimmt die auch nicht?
Ich schau mal ob ich dafür eine Lösung finden kann, danke für feedback!
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
20. Okt 2022
Und noch etwas, DX9 funktioniert nur wenn man 32bit kompiliert!
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
20. Okt 2022
Neueste Version im Anhang dieses Themas hochgeladen.
Abgesehen von allen oben genannten Änderungen ist nun noch ein Hotkey dazu gekommen
Control-Shift-Druck = wiederhole einen scan mit den zuletzt verwendeten Bildschirmbereich
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
20. Okt 2022
Ich war sehr bemüht das es mit egal welcher Methode (abgesehen von Print) ich immer ein vollwertiges Bild vom Desktop erhalte.
Die verschiedenen Engines kurz erklärt:
GDI = ist sehr schnell, es kann sein das ein Overlay/Overlapped Window nur Schwarz als Bild liefert.
DDA = ist extrem schnell, kann Artefakte beinhalten, kann durch Windows API blockiert werden, könnte mit Anpassungen zum...
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
19. Okt 2022
Was ich noch sagen wollte, ihr könnt natürlich auch direkt die gewünschte klassen methode aufrufen, dann müßt ihr halt manuel den Bereich den Ihr knipsen wollt übergeben.
die methoden kurz vorgestellt:
Snap = das ist die Hauptmethode im voll-Automatik modus
SnapShot = das ist die semi-Automatik variante die noch per Einstellung der Klasse arbeitet
SnapShotGDI = das wäre ein Aufruf einer...
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
19. Okt 2022
Mist, so sollte es sein:
FImageWidth := Abs(FRect.Right - FRect.Left);
FImageHeight := Abs(FRect.Bottom - FRect.Top);
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
19. Okt 2022
kz.Windows.SnapShot.pas ->
bitte HiddenProc aktualisieren (im case "kzHotkeyRec")
if ((not TForm(SS.Owner).Visible) and SS.AutoHide) then
begin
Application.Restore;
Application.BringToFront;
...
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
19. Okt 2022
bitte aktualisieren, in allen SnapShot methoden (SnapShotGDI, SnapShotDDA, SnapShotDX9, SnapShotPrint)
FImageWidth := Abs(FRect.Right) - Abs(FRect.Left);
FImageHeight := Abs(FRect.Bottom) - Abs(FRect.Top);
Nun ist auch diese Berechnung korrekt :?: :oops: :twisted:
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
19. Okt 2022
bitte aktualisieren in kz.Windows.SnapShot.pas
in methode "procedure TkzSnapShot.Snap;"
if (not FGetFocused) then
begin
FRect.Left := GetSystemMetrics(SM_XVIRTUALSCREEN);
FRect.Top := GetSystemMetrics(SM_YVIRTUALSCREEN);
FRect.Right := GetSystemMetrics(SM_CXVIRTUALSCREEN);
FRect.Bottom := GetSystemMetrics(SM_CYVIRTUALSCREEN);
end;
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
18. Okt 2022
Die Bedienung per Grundeinstellung nachdem man die Hotkeys aktiviert hat:
ALT+DRUCK = alles
CONTROL+DRUCK = aktives Fenster
SHIFT+DRUCK = Benutzer Selektion
Ps: SHIFT+DRUCK besonderheit: wenn Ihr mit der mittleren Maus-Taste selektiert, wird das Bild invertiert.
-
Forum: Software-Projekte der Mitglieder
by KodeZwerg,
18. Okt 2022
Hiermit möchte ich das wiedergeben was ich Dank Euch so gesammelt habe, vereint in einer sehr einfach zu handhabenen Klasse.
Die Klasse ist darauf ausgelegt sogut wie alles automatisch abzuarbeiten ohne viel von Euch als Input zu erwarten.
4 verschiedene Möglichkeiten sind geboten
- GDI (multimonitor)
- DDA (single monitor)
- DX9 (32bit) (single monitor)
- PRINT