AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Zufall generieren dauert lange

Ein Thema von Ultimator · begonnen am 26. Mai 2004 · letzter Beitrag vom 26. Mai 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#1

Zufall generieren dauert lange

  Alt 26. Mai 2004, 17:58
Hallo!
Ich habe jetzt ein Verschlüsselungsprogramm geschrieben. Ich bin auch ziemlich weit, aber jetzt wirft sich eine Frage auf:
Wenn ich für einen Text ein Zufallspasswort generieren lassen will, und der Text recht lang (>200 Zeichen) ist, dann dauert das. Sogar sehr lange. So, nun möxhte ich dem Benutzer die Möglichkeit geben, den ganzen Vorgang abzubrechen, doch wie mache ich das?
Julian J. Pracht
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#2

Re: Zufall generieren dauert lange

  Alt 26. Mai 2004, 18:01
poste doch mal den entsprechenden source teil. prinzipiell hilft Hier im Forum suchenapplication.processmessages oder Hier im Forum suchenmultithreading
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#3

Re: Zufall generieren dauert lange

  Alt 26. Mai 2004, 18:04
Application.Processmessagen hab ich schon an allen möglichen und unmöglichen Stellen eingefügt, aber hier trotzdem mal der Code zum generieren des Passwortes:
Delphi-Quellcode:
procedure TForm1.CreateOTP(OriginalText: string);
var i: integer;
begin
  for i := 1 to length(OriginalText) do
  begin
    Memo3.Text := Memo3.Text + inttostr(random(255));
    Application.ProcessMessages;
  end;
end;
Ich hoffe, ihr könnt mir helfen.
Julian J. Pracht
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#4

Re: Zufall generieren dauert lange

  Alt 26. Mai 2004, 18:07
dann muss da noch in die schleife sowas rein wie if blAbbruch = true then break; blAbbruch muss dann natürlich boolean sein. wenn du dann per buttonclick blAbbruch 8globale variable) auf true setzt, stoppt die schleife!
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#5

Re: Zufall generieren dauert lange

  Alt 26. Mai 2004, 18:09
OK, danke! Hat mir gehlofen
Aber warum dauert es so lange, 200 Zufallszahlen zu finden?
Julian J. Pracht
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#6

Re: Zufall generieren dauert lange

  Alt 26. Mai 2004, 18:10
kann ich dir auch nicht sagen. aber mir fällt gerade auf, dass du scheinbar kein randomize verwendest, was du tun solltest, da sonst random immer die gleichen zufallszahlen liefert!
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#7

Re: Zufall generieren dauert lange

  Alt 26. Mai 2004, 18:11
Doch, ich hab ein randomize im FormCreate.
Julian J. Pracht
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#8

Re: Zufall generieren dauert lange

  Alt 26. Mai 2004, 18:12
achso, dann passts ja! wär eher kontraproduktiv wenn dus nicht drin hättest
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#9

Re: Zufall generieren dauert lange

  Alt 26. Mai 2004, 18:12
Zitat von Ultimator:
Delphi-Quellcode:
procedure TForm1.CreateOTP(OriginalText: string);
var i: integer;
begin
  for i := 1 to length(OriginalText) do
  begin
    Memo3.Text := Memo3.Text + inttostr(random(255));
    Application.ProcessMessages;
  end;
end;
Das ist aber extrem ungünstig programmiert!!!
Besser so (braucht nur wenige ms):
   Memo3.Text := RandomString(Length(OriginalText)); Siehe:
(CodeLibrary) Zufallstrings erzeugen
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#10

Re: Zufall generieren dauert lange

  Alt 26. Mai 2004, 18:16
Oh, hehe. Muss ich übersehen haben
Ist das dann auch echter Zufall oder wieder nur Pseudo-Zufall?
Julian J. Pracht
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz