![]() |
Re: CryptMaster - AES-Verschlüsselungsprogramm
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,
hab jetzt mal mit Application.PrecessMessages gearbeitet. Jetzt stürzt das wenigstens nicht mehr ab. Aber wie kriege ich diesen Abbrechen-Button hin? Nur meine Verschlüsselungsfunktion zu stoppen, das geht eh nicht. Aber dann will ich wenigstens die Anwendung schließen. Mit Application.Terminate geht es nicht. Das wird erst ausgeführt, wenn alles fertig ist. Application.Free schließt zwar die Anwendung, aber nicht den Prozess. Ist also auch schlecht. Was kann ich also machen? Es muss do möglich sein, dass ich den Prozess meiner Anwendung kille, oder? MfG, Daniel. |
Re: CryptMaster - AES-Verschlüsselungsprogramm
Moin Daniel,
setz' in der OnClick des Abbrechen Buttons ein Flag, und frag das in der Schleife die Du abbrechen willst ab. Flag gesetzt: Schleife beenden. |
Re: CryptMaster - AES-Verschlüsselungsprogramm
Soweit hab ich auch schon gedacht.
Leider hab ich auf die Schleife aber keinen Zugriff, weil die im DEC versteckt ist! Ich gebe dem DEC also nur einen Befehl und das wird dann abgearbeitet. Den Forschritt erfahre ich nur über den StreamProgressAdapter. Mir bleibt also nichts Anderes übrig, als entweder die Prozedur zu killen oder das gesamte Programm. MfG, Daniel. |
Re: CryptMaster - AES-Verschlüsselungsprogramm
daher solltest du es auch in einen Thread auslagern. Den kannst du nämlich einfach per TerminateThread(Handle); beenden.
mfG mirage228 |
Re: CryptMaster - AES-Verschlüsselungsprogramm
Dann verzichte ich lieber auf das Beenden.
Hmm...Ich glaube, ich hab irgendwo noch einen Code, mit dem ich direkt einen Prozess killen kann. Dann kann ich doch einfach das Handle meines Programms an diese Funktion übergeben und schon in der Prozess gekillt. Stellt sich nur die Frage, ob das dann auch unter WinME geht. Na, ja. Irgendjemand von euch wird ja WinME haben. Der soll das dann doch bitte mal nachher testen. ;-) MfG, Daniel. |
Re: CryptMaster - AES-Verschlüsselungsprogramm
Mal 'ne Frage:
Wie kriege ich die ProcessID meines Programms? MfG, Daniel. |
Re: CryptMaster - AES-Verschlüsselungsprogramm
GetCurrentProcesID.
Aber jetzt fängst du an rumzuflicken und unsauber zu arbeiten. Nimm EncodeBuffer wie ich in einer Schleife, diese kannst du dann über ein Flag verlassen. Eventuell ist das auch schneller als EncodeStream. |
Re: CryptMaster - AES-Verschlüsselungsprogramm
Gut, aber dann verschlüssel ich jeden Buffer einzeln und das ist nicht gut. Dann bringt mir CBC nämlich praktisch nichts mehr (soweit ich weiß).
MfG, Daniel. PS: Mir ist lieber das Prog ist etwas geflickt als wenn die Verschlüsselung geflickt ist! |
Re: CryptMaster - AES-Verschlüsselungsprogramm
Hagen hat gesagt, dass EncodeStream intern EncodeBuffer aufruft. Mußt mal in unserem Thread kucken, da steht es irgendwo.
|
Re: CryptMaster - AES-Verschlüsselungsprogramm
Liste der Anhänge anzeigen (Anzahl: 1)
Oki, wenn der das intern nutzt, dann könnte ich das auch nehmen.
Aber dann könnte ich auch den StreamProgressAdapter wieder rausschmeißen - zumindest für einige Funktionen. Das heißt: Nee, ich könnte ihn nicht nehmen. Die meiste Zeit dauert es nämlich, wenn ich die Funktion CopyFrom() aufrufe. Abgesehen davon bin ich mit meiner jetzigen Lösung schon ganz zufrieden. Immerhin funktioniert es ohne Probleme. So, hier ist erst einmal die aktuelle Version meines Programmes! MfG, Daniel. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:32 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