Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Werkzeuge (https://www.delphipraxis.net/63-sonstige-werkzeuge/)
-   -   Freeware - Hilfsprogramm "Schleifentest" (https://www.delphipraxis.net/151152-freeware-hilfsprogramm-schleifentest.html)

ccc2 7. Mai 2010 15:21


Freeware - Hilfsprogramm "Schleifentest"
 
Habe mir mal die Arbeit gemacht und ein Programm (Schleifentest) geschrieben. Denn (sicher nicht nur ich) habe ab und zu Problemen bei Schleifen, die eine andere Schrittweite als 1 aufweisen.

Hier nun dieses Programm. Über Hinweise und Fehler würde ich mich freuen.

[edit=Admin]Da der Verdacht auf eine infizierte Datei besteht, habe ich den Anhang mal entfernt. Mfg, Daniel[/edit]

Wolfgang Mix 7. Mai 2010 15:25

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Mein Bitdefender meldet Virus

hoika 7. Mai 2010 15:26

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Hallo,

VIRUS !!!


Sagt zumindestens mein McAfee.
Kann es sein, das das der "Delphi-Virus" ist ?

Lade das Projekt mal ohne Exe hoch.


Heiko

dominikkv 7. Mai 2010 15:26

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Bei mir schlägt der Virenscanner an

jfheins 7. Mai 2010 15:36

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Virustototal: http://www.virustotal.com/de/analisi...b8c-1273242886

sirius 7. Mai 2010 15:37

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Zitat:

Habe mir mal die Arbeit gemacht und ein Programm (Schleifentest) geschrieben. Denn (sicher nicht nur ich) habe ab und zu Problemen bei Schleifen, die eine andere Schrittweite als 1 aufweisen.
Ich bin auch mal mit dem Kopf durch die Wand gelaufen. Ich programmiere das schnell mal, damit ihr das auch könnt. :wall:

(Jetzt wollt ich mal in den Virus reingucken, aber F-Secure erlaubt mir nichteinmal den Download)

blackfin 7. Mai 2010 15:40

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Ich fühl mich irgendwie vera*****......

sirius 7. Mai 2010 15:44

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Zitat:

Zitat von jfheins

Hmm, in den Imports ist gar nix schlimmes drin. Keine Dateiarbeit, kein öffnen/nutzen anderer Processe, keine Sockets o.ä. Nur die Registry wird bemüht.
(Das alles unter Vorbehalt, dass er nicht dynamisch noch etwas nachlädt)

ccc2 7. Mai 2010 15:48

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Habe die Sourcen nochmal mit Turbo Delphi compiliert. Jetzt müsste aber alles OK sein ??

Übrigens verscheissern will ich hier gar keinen.

Hier also die mit TD compilierte Datei.

Übrigens soll doch der Delphi-Virus erst ab Version 5 greifen ??

[edit=Matze]Da der Verdacht auf infizierte Dateien besteht, habe ich den Anhang entfernt. MfG, Matze[/edit]

Tom 7. Mai 2010 15:53

Re: Freeware - Hilfsprogramm "Schleifentest"
 
a) wer soll Dir noch trauen ohne Sourcen?
b) was macht den eine Programm "Schleifentest"? Würde mich mal interessieren.
c) kaspersky schreit!!

Admins helft ...

Teekeks 7. Mai 2010 15:56

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Hi!
Mich würde auch interresieren was das macht.
Aber ich mach mir auch mal "die mühe":
Delphi-Quellcode:
var i:integer=0;
while i<42 do
begin
  {Tu irgendwas mit i}
  Inc(i,{Schrittweite});
end;
Fertig.

Wo ist das Problem?

himitsu 7. Mai 2010 15:58

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Es ist schonmal nicht der Delphi-Virus, sondern irgendein anderer.
(Der DelphiVirus heißt W32.Induct.*)

Teekeks 7. Mai 2010 15:59

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Ps:
Virustest...
Datei umbenennen und wieder rein stellen hilft nicht :) Du solltest schon mal was rein stellen was kein Virus ist :/

himitsu 7. Mai 2010 16:13

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Delphi-Quellcode:
Procedure TForm1.FormCreate(Sender: TObject);
  Var i: Integer;

  Begin
    For i in TStepper.Create(1, 20, 3) do
      Memo1.Lines.Add(IntToStr(i));
  End;
1 4 7 10 13 16 19

Ich weiß jetzt nur nicht genau ab welcher Delphiversion Enumeratoren eingeführt wurden.


Delphi-Quellcode:
Type TStepper = Class
  Private
    FIndex: Integer;
    FStep: Integer;
    FMax:  Integer;
  Public
    Constructor Create(Min, Max, Step: Integer);
    Function GetEnumerator: TStepper;
    Function MoveNext:  Boolean;
    Function GetCurrent: Integer;
    Property Current:   Integer Read GetCurrent;
  End;

Function TStepper.GetEnumerator: TStepper;
  Begin
    Result := Self;
  End;

Constructor TStepper.Create(Min, Max, Step: Integer);
  Begin
    FIndex := Min - Step;
    FStep := Step;
    FMax  := Max;
  End;

Function TStepper.MoveNext: Boolean;
  Begin
    Inc(FIndex, FStep);
    Result := FIndex <= FMax;
  End;

Function TStepper.GetCurrent: Integer;
  Begin
    Result := FIndex;
  End;

jfheins 7. Mai 2010 16:14

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Es muss ja gar nicht der Delphi Virus sein. Es ist doch kein unübliches Verhalten, dass ein Virus .exe Dateien infiziert, um sich selbst zu verbreiten, oder?

ccc2 7. Mai 2010 16:19

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Liste der Anhänge anzeigen (Anzahl: 2)
@teekeks: die Sourcen hatte ich erst mit D3 (s. Profil !) und nach der Virusmeldung mit TD kompiliert.

Also gut...

Hier die Sourcen als ZIP-Datei.

Kann dann ja vielleicht jemand anderes als EXE reinstellen ??

Zur Frage der Funktion:

In Basic z.B. For n=22 to 90 step 4

In Delphi: Umständlich mit sinngemäß:

for n := xx to (yy div zz) do

Hier kann man nach Eingabe von xx, yy und zz in einer Listbox den Verlauf sehen.

blackfin 7. Mai 2010 16:25

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Delphi-Quellcode:
for n := xx to (yy div zz) do
Das hat irgendwie wenig mit Schleifen zu tun, deren Schrittweite grösser 1 ist..du limitierst damit doch nur das Ende....

Was ist jetzt daran der Sinn? :wiejetzt:


ich glaub ich brauch ein Bier.... :mrgreen:

Teekeks 7. Mai 2010 16:30

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Zitat:

Zitat von ccc2
@teekeks: die Sourcen hatte ich erst mit D3 (s. Profil !) und nach der Virusmeldung mit TD kompiliert.

Der von mir gepostete Virustest war von deiner neuen Variante (also deine Neukompilierung...)

himitsu 7. Mai 2010 16:31

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Code:
For n = xx to yy step zz
Delphi-Quellcode:
for nz := 0 to (yy - xx) div zz do
begin
  n := nz * zz + xx;


end;
oder
Delphi-Quellcode:
n := xx;
while n <= yy do
begin


  Inc(n, zz); // n := n + zz;
end;
Dein Code funktioniert jedenfalls nicht;
Delphi-Quellcode:
// For n = 22 to 90 step 4 
for e := 22 to 90 div 4 do
begin
  n := e * 4;
  Memo1.Lines.Add(IntToStr(n));
end;

Zitat:

Zitat von Teekeks
Der von mir gepostete Virustest war von deiner neuen Variante (also deine Neukompilierung...)

Wenn Windows befalllen ist, dann sind alle Dateien potentiell gefährdet und somit auch beide Delphi-Installationen.

@ccc2: Hast du bei dir ein Antiviren-Programm installiert?
Ich würde dir jedenfalls dringend anraten dein System mal zu prüfen.

ccc2 7. Mai 2010 16:55

Re: Freeware - Hilfsprogramm "Schleifentest"
 
So - jetzt habe ich mal meinen Uralt-Laptop rausgekramt (mit win95 und noch nie in netz mit gewesen) und habe damit die Sourcen neu kompiliert. Siehe da - trotz gleicher Größe Unterschiede gefunden.

Hier das - versprochen !! - letzte Mal die EXE.

Ürigens liegt es mir fern, jemanden zu ärgern oder gar einen Virus unterzuschieben.

[edit=MrSpock]Anhang wegen Virus gelöscht. Mfg, MrSpock[/edit]

Wolfgang Mix 7. Mai 2010 16:56

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Was haltet ihr davon?

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var anfang,ende,step:real;
begin
  anfang:=17.5;
  step:=0.75;
  ende:=42;
  repeat
    Memo1.Lines.Add(floatToStr(anfang));
    anfang:=anfang+step;
  until anfang>=ende;

end;

himitsu 7. Mai 2010 16:59

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Diese Datei ist ebenfalls befallen.
Wie hast du denn Delphi und die Quelldateien auf diesen Läppi draufbekommen?

Zitat:

Zitat von ccc2
Ürigens liegt es mir fern, jemanden zu ärgern oder gar einen Virus unterzuschieben.

Darum solltest du mal deinen PC prüfen.

Ich kompiliere gleich mal deine sourcen in meinem TDE ... mal sehn was passiert.

@Wolfgang:
While statt Repeat verwenden, da For-To auch vor der Schleife prüft.

Wolfgang Mix 7. Mai 2010 17:07

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Okay, bin überzeugt, du hast gewonnen :)

himitsu 7. Mai 2010 17:12

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Hey, mach dir nix draus ... muß ja nicht heißen, daß es mit Repeat überhaupt nicht geht. http://fnse.de/S05/1L9.gif
Delphi-Quellcode:
var anfang,ende,step:real;
begin
  anfang:=17.5;
  step:=0.75;
  ende:=42;
  if anfang <= ende then
    repeat
      Memo1.Lines.Add(floatToStr(anfang));
      anfang:=anfang+step;
    until anfang > ende;
und in Bezug auf das etwas blöde Rundungsverhalten der Fließkommatypen:
Delphi-Quellcode:
var anfang, ende, step, x:real;
  i: Integer;
begin
  anfang := 17.5;
  ende := 42;
  step := 0.75;

  i := 0;
  x := anfang;
  while x <= ende do
  begin

    Memo1.Lines.Add(floatToStr(x));

    Inc(i);
    x := anfang + step * i;
  end;

Wolfgang Mix 7. Mai 2010 17:23

Re: Freeware - Hilfsprogramm "Schleifentest"
 
@himitsu
Das Umschreiben nach while müßte jetzt ja auch jeder bewältigen können :mrgreen:

Wolfgang Mix 7. Mai 2010 17:27

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Mit den Rundungsfehlern hast du natürlich recht,

ccc2 7. Mai 2010 17:32

Re: Freeware - Hilfsprogramm "Schleifentest"
 
@himitsu

hier die exe zum vergleich

[edit=MrSpock]Anhang wegen Virus gelöscht. Mfg, MrSpock[/edit]

Wolfgang Mix 7. Mai 2010 18:04

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Die Datei ist immer noch virenverseucht.

markus5766h 7. Mai 2010 19:02

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Hallo,

AVAST meldet:
Virus:Win32/Virut.BN

Microsoft Security Essentials:
Virus:Win32/Virut.BN

... :feuerchen:

himitsu 7. Mai 2010 19:27

Re: Freeware - Hilfsprogramm "Schleifentest"
 
@Wolfgang: ja, ich hatte nach dieser TDE-Version gefragt, um diese mal mit einem "sauberen" Compilat meines TDEs vergleichen zu können.
Aber gehofft, daß sie ebenfalls als PN zurück kommt und nicht öffentlich.

OK, es ist definitiv etwas enthalten, welches den PE-Header (vermutlich den Entrypoint) verändert und zusätzlich sind noch knapp 20 KB an fremden Code hinten ans Programm angehängt.
Was dieser Code aber macht, konnte ich jetzt auch nicht erkennen. :gruebel:

@ccc2: Also bei dir hat sich tatsächlich etwas eingeschlichen.

Zitat:

Name: W32/Virut.Gen
Entdeckt am: 25/07/2007
Art: File Infector
In freier Wildbahn: Ja
Gemeldete Infektionen: Niedrig
Verbreitungspotenzial: Niedrig
Schadenspotenzial: Niedrig
[google]W32/Virut.Gen[/google]

Auch wenn da "niedrig" steht, wäre es wohl dennoch besser, wenn du diesen entfernst.

Der sicherste Weg ist, wenn du alle Dateien (EXE, DLL, COM, SYS und Co.) als befallen ansiehst, deine Festplatte formatierst und dein system komplett neu aufsetzt.
Und vorallem die Installation eines Virenscanner kann nicht schaden.

Deine ganzen Quellcodes (abgesehn der EXEen) kannst du aber als sauber ansehn und dir auf einen USB-Stick oder eine CD kopieren.
(da es angeblich "nur" ein File-Infector ist, sollten die Bootsektoren von USB-Sticks und Disketten sicher sein)

[add]
Zitat:

Virus:Win32/Virut.BN is a detection for a polymorphic file infector that targets .EXE and .SCR Windows files. This virus also opens a backdoor by connecting to an IRC server, allowing a remote attacker to download and execute arbitrary files on the infected computer.
Dieser Virus macht also erstmal nichts böses, außer sich zu verbreiten und eine Hintertür zu öffnen.
Mit einem Virenscanner und einer Firewall ausgestattet wäre man also grundsätzlich erstmal vor Schlimmerem sicher. :)

hoika 8. Mai 2010 06:30

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Hallo ccc2,

kann es sein, dass du mit dem Lappi kompilierst
und dann mit dem anderen (verseuchten) Rechner hier hochlädst ?


Heiko

ccc2 8. Mai 2010 10:14

Re: Freeware - Hilfsprogramm "Schleifentest"
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo an alle - habe den PC wieder neu aufgesetzt - incl. Virenscanner etc. und das Programm neu compiliert. Es kam keine Virenwarnung mehr. Ihr hattet recht - die vorherige exe hatte tatsächlich den "Virut".

Hier nun die hoffentlich saubere Datei.

himitsu 8. Mai 2010 10:52

Re: Freeware - Hilfsprogramm "Schleifentest"
 
jupp, ist sauber.

Dann können wir uns ja nun wieder dem eigentlichen Grund zuwenden. :-D


Gib mal in deinem Programm 22, 90 und die 5 ein und schau, wie nichts passiert.
(der Grund dafür wurde ja schonmal genannt)


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:12 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