Zitat von
toms:
Wie wäre es, das Programm Open-Source zu machen?
Könnte ich Kürze passieren. Allmählich freue ich mich mit diesem Gedanken zunehmend an, bald werde ich "Gern!" antworten und es tun. Ich frage mich allerdings, wer Lust hat, in meinen Quelltexten "herumzurödeln". Du etwa/vielleicht? Falls ja, würde es mich freuen, und dann ist meine Hemmschwelle noch niedriger, diese herauszurücken. Allzuviel "knoff hoff" eigener Colour steckt dort, wie sollte es bei einem Delphi-Laien auch anders sein, nämlich nicht drin, es war eher eine Fleíßarbeit. Das Grundgerüst der
DLL sind die Hook-Prozeduren von Assarbad, dieses Grundgerüst desweiteren garniert mit einer Prozedur von Luckie. Beide Vollprofis sind in diesem Kreise sicher bestens bekannt. Natürlich nicht zu vergessen die exzellente CoolTrayIcon-Komponente, um ein Hintergrundprogramm zurechtzubasteln. Also viel zusammenkopiert, worauf ich gar keine Urheberechte erheben kann, darf und möchte.
Allerdings werden die grundsätzlichen Probleme vielleicht doch nicht (ganz?) aus der Welt zu schaffen sein, damit meine ich vor allem:
1. Die Steuerung der Hook-Prozeduren über Dateien (in DLLs gibt es keine globalen Variablen, vor allem oder zumindest ausgerechnet in solchen, in denen Hook-Prozeduren aufgerufen werden, das erfuhr ich im Delphi.de-Forum:
Glob.Variablenzugr.i.zeigerübergebenen/hookinitiierten Funk.. Es lassen sich zwar über den Funktionsaufruf der Hookinitialisierungsfunktionen Variablen in die
DLL einschleusen, diese stehen dort allerdings nicht global zur Verfügung. Allerdings müßte ich diese Steuerung über Dateien nunmehr soweit zurechtgefummelt haben, daß es stabil ist.
2. Die fehlende Langzeitstabilität des Explorers gegenüber diesen Hooks und die manchmal doch recht merkwürdigen Effekte (Probleme!), die das Aktivieren der Hooks mit sich bringt. Ich habe es sogar schon erlebt, daß ein Hook, obwohl ich ihn gar nicht ausgeschaltet ("entladen") hatte, plötzlich "weg" war, zumindest zeigte mein Programm keine Reaktion mehr. Ein reines Timergesteuertes Programm ist jedoch viel zu pille-palle, als daß es wert wäre, sich damit weiter zu beschäftigen.
Ich denke, eine weltweit akzeptable vollautomatische Lösung dieser Windows-Lästigkeit, von der auch ich partizipieren könnte, steht über der eitlen Kleinheit, den Quelltext, der ziemlich wenig eigenes echtes "Know how" beinhaltet, eines Programmes, das ohnehin nicht verkaufbar ist, zurückzuhalten.
Immerhin bin ich auf einen weiteren Windows-Fehler (Vertauschung bei Ereignisbezeichnungen im CBT-Hook) gestoßen, den ich eigentlich einmal Mikroweich mitteilen sollte, allerdings weiß ich nicht, über welchen Datenkanal (piracy@microsoft.com?!), und ob man dort für solche Kinkerlitzchen offen ist, halte ich für fraglich, zumal viel gravierendere Windows-Probleme seit einigen Versionen dort mit sich herumgeschleppt werden, ohne korrigiert zu werden.
So, erst mal wieder genug getextet....