![]() |
Re: D5 + Liste überwachter Ausdrücke speichern???
Schade!
:( Also bleibts auch im digitalen Zeitalter bei Zettel und Stift... |
Re: D5 + Liste überwachter Ausdrücke speichern???
Hab doch noch eine Lösung gefunden und möchte Euch natürlich noch dran teilhaben lassen. Mein Kollege hat mir verraten, dass man mit STRG+C die aktuell markierte Zeile in den überwachten Ausdrücken kopieren kann. Drum hab ich mir ein kleines Prog geschrieben, dass die Zeilen dann direkt in eine Datei schreibt:
Delphi-Quellcode:
Das ganze auf eine Sondertaste meiner Tastatur gelegt... und es funzt wunderbar.
program ClipboardTextToFile;
uses sysutils, dialogs, Classes, Windows, clipbrd; var Liste: TStringlist = nil; Ablage: TClipBoard = nil; Dateiname: string = 'clipboard.txt'; begin //Tastendruck strg+c simmulieren keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL, 0), 0, 0); keybd_event(99, 81, 0, 0); keybd_event(99, 81, KEYEVENTF_KEYUP, 0); keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL, 0), KEYEVENTF_KEYUP, 0); if paramcount > 0 then begin if (uppercase(paramstr(1)) = '/HELP') or (paramstr(1) = '/?') then begin showmessage('Fügt den Inhalt der Zwischenablage an eine Datei an, die als Parameter übergeben wird'); Dateiname:=''; end else Dateiname := Paramstr(1); end; try Ablage := TClipBoard.Create; Liste := TStringlist.create; if Fileexists(Dateiname) then Liste.LoadFromFile(Dateiname); Liste.add(Ablage.AsText); Liste.SaveToFile(Dateiname); finally Liste.Free; Ablage.Free; end; end. |
Re: D5 + Liste überwachter Ausdrücke speichern???
Ok, es funzte doch nicht so wunderbar.
Anscheinend muss man mit
Delphi-Quellcode:
noch so lange warten, bis die Daten auch im Zwischenspeicher sind.
Ablage := TClipBoard.Create;
Also:
Delphi-Quellcode:
Slepp(100);
Ablage := TClipBoard.Create; |
Re: D5 + Liste überwachter Ausdrücke speichern???
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo
Ich habe nun meinen eigenen (Quick&Dirty) "Watch List-Saver" geschrieben. Sollte unter D5 - D2009 funktionieren (getestet mit D6/D2009) Funktion: Speichert alle Einträge der "Watch Liste" in eine Datei. Wahlweise macht es ein "Append" Verwendete Funktionen:
Delphi-Quellcode:
Einfacher Aufruf: SaveWatchList.exe [AusgabeDatei]
procedure PostKeyEx(hWindow: HWnd; key: Word; const shift: TShiftState; SpecialKey: Boolean);
procedure SelectAll_CopyClipboard(wndParent, wndChild: HWND; bChildVST: Boolean); function SaveClipBoardToFile(FileName: string; bAppendFile: Boolean): string; function HandleParamstr(out FileName: string; out bAppendFile: Boolean): Boolean; function FindWatchWindow(out wndWatchWindow, wndChild: HWND; out bChildVST: Boolean): Boolean; Hinweise: Funktioniert nicht, wenn das Watch Fenster angedockt ist, wenn mehrere Watch Fenster offen sind, findet es evtl. nicht das gewünschte. PS: Lässt sich z.B als Tool in der Delphi IDE hinzufügen. (Tools | Configure Tools...) |
Re: D5 + Liste überwachter Ausdrücke speichern???
Nun bei mir funktioniert es leider nicht.
Ich kann in dem Feld 'Liste überwachter Ausdrücke' Leider nicht alles markieren. bei der Zeile
Delphi-Quellcode:
Springt er nur zum Ende und kopiert dann den letzten leeren Ausdruck!
PostKeyEx(wndChild, VK_END, [ssCtrl, ssShift], True);
|
Re: D5 + Liste überwachter Ausdrücke speichern???
So, ich habe auch noch ein bissel gebastelt und nun funzt es. Hab aber nur mit Delphi 5 getestet. Dafür scheint es jetzt auch bei angedocktem Fenster zu funktionieren und auch bei mehreren Fenstern, dafür aber nur für die deutsche Delphi Version.
@toms: Sag mal, ist der TVirtualStringTree für höhere Delphiversionen??? Hier beim Testen hab ich den Pfad nie durchlaufen. |
Re: D5 + Liste überwachter Ausdrücke speichern???
Zitat:
(oder bei Shift+End ?) Zitat:
Zitat:
("(Pos('Watch List', Caption) > 0)" hinzugefügt.)
Delphi-Quellcode:
function EnumProcTTabSheet(wnd: HWND; pwnd: pHWND): BOOL; stdcall;
var buf, Caption: array[0..255] of Char; begin Result := True; GetClassName(wnd, buf, SizeOf(buf) - 1); SendMessage(wnd, WM_GETTEXT, 256, Integer(@Caption)); if (buf = 'TTabSheet') and ((Pos('Liste überw', Caption) > 0) or (Pos('Watch List', Caption) > 0)) then begin pwnd^ := wnd; Result := False; end; end; function EnumProcTWatchWindow(wnd: HWND; pwnd: pHWND): BOOL; stdcall; var buf, Caption: array[0..255] of Char; begin Result := True; GetClassName(wnd, buf, SizeOf(buf) - 1); SendMessage(wnd, WM_GETTEXT, 256, Integer(@Caption)); if (buf = 'TWatchWindow') and ((Pos('Liste überw', Caption) > 0) or (Pos('Watch List', Caption) > 0)) then begin pwnd^ := wnd; Result := False; end; end; |
Re: D5 + Liste überwachter Ausdrücke speichern???
Zitat:
Hab jetzt auch noch Fehler behoben und die Tastenkombinationen für 'IDE-Klassisch' eingefügt. |
Re: D5 + Liste überwachter Ausdrücke speichern???
Zitat:
|
Re: D5 + Liste überwachter Ausdrücke speichern???
Na schöner wäre es schon, aber ich denke bei so einem kleinen Prog ist das mit der Effizienz nicht ganz so schlimm...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz