AGB  ·  Datenschutz  ·  Impressum  







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

ShellExecute und UPX

Ein Thema von Die Muhkuh · begonnen am 17. Apr 2005 · letzter Beitrag vom 20. Apr 2005
Antwort Antwort
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#1

ShellExecute und UPX

  Alt 17. Apr 2005, 18:36
Hi,

jaja, das Shellexecute... .

Delphi-Quellcode:
procedure Tfmain.Button3Click(Sender: TObject);
var
  UPX: String;
begin
  UPX := ExtractFilePath(Application.ExeName) + 'upx.exe';

  if not FileExists(UPX) then
  begin
    ShowMessage('Can''t find upx.exe');
    Exit;
  end;

  ShellExecute(Handle, nil, PChar(UPX + ' ' + edSource.Text) , nil, nil, SW_SHOWNORMAL);
end;
Ich möchte, wenn ich auf den Button drück, das UPX ausgeführt wird und meine Datei packt. Aber wenn ich das so mache, dann passiert da nichts. Im edSource.Text steht die Datei samt Pfad. Ich habs auch schon mit ExtractFileName versucht, aber ich bekomm das nicht gebacken.

Wie kann ich nun UPX aufrufen, das meine Datei gepackt wird?
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#2

Re: ShellExecute und UPX

  Alt 17. Apr 2005, 18:38
Parameter werden bei "ShellExecute" separat angegeben.
  Mit Zitat antworten Zitat
KLS

Registriert seit: 20. Jun 2004
Ort: Berlin
89 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: ShellExecute und UPX

  Alt 17. Apr 2005, 18:48
Delphi-Quellcode:
procedure Starteprogramm(Pfad : string; parameter : string = '');
begin
  ShellExecute(0,'open',PChar(Pfad),PChar(parameter),nil,SW_SHOW);
end;
Du kannst aber auch "UPX shell" benutzen, das hat eigentlich schon alles was das herz begeehrt.
Thomas H.
  Mit Zitat antworten Zitat
Benutzerbild von fylo
fylo

Registriert seit: 18. Feb 2004
Ort: Rostock
155 Beiträge
 
Delphi 7 Personal
 
#4

Re: ShellExecute und UPX

  Alt 18. Apr 2005, 08:26
Hi

versuch vieleicht auch noch aus dem String UPX := ExtractFilePath(Application.ExeName) + 'upx.exe'; ein UPX := ExtractFilePath(Application.ExeName) + '\upx.exe'; mit dem "\" vor upx.exe zu machen.
have fun
fylo
  Mit Zitat antworten Zitat
Benutzerbild von Boombuler
Boombuler

Registriert seit: 14. Mär 2003
Ort: Osnabrück
244 Beiträge
 
Delphi 2009 Professional
 
#5

Re: ShellExecute und UPX

  Alt 18. Apr 2005, 09:30
Zitat von fylo:
Hi

versuch vieleicht auch noch aus dem String UPX := ExtractFilePath(Application.ExeName) + 'upx.exe'; ein UPX := ExtractFilePath(Application.ExeName) + '\upx.exe'; mit dem "\" vor upx.exe zu machen.
Oder einfach die Funktion: IncludeTrailingPathDelimiter benutzen...

Greetz
Boombuler
"Look at you, Hacker. A pathetic creature of meat and bone, panting and sweating as you run through my corridors. How can you challenge a perfect, immortal machine?"
SwapIt Highscore:
  Mit Zitat antworten Zitat
Nogge

Registriert seit: 15. Jul 2004
336 Beiträge
 
Delphi 7 Professional
 
#6

Re: ShellExecute und UPX

  Alt 20. Apr 2005, 15:58
Das ist die korrekte Art, eine Datei zu öffnen:
Delphi-Quellcode:
  ShellExecute(handle,'open',PChar(extractfilename(filename)),
  PChar(parameters),PChar(extractfilepath(filename)),SW_NORMAL);
Btw der Backslash darf hier nicht gesetzt werden:
  UPX := ExtractFilePath(Application.ExeName) + '\upx.exe';
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#7

Re: ShellExecute und UPX

  Alt 20. Apr 2005, 16:04
Zitat von Nogge:
Delphi-Quellcode:
  shellexecute(handle,'open',PChar(extractfilename(filename)),PChar(parameters),
  PChar(extractfilepath(filename)),SW_NORMAL);
das ist die korrekte art, eine datei zu öffnen.
Mit "ExtractFileName(filename)"? Na ja, bei Programmen, die in der Umgebung bekannt sind (PATH) mag das gehen.

Zitat:
btw der backslash darf nicht gesetzt werden.
  Mit Zitat antworten Zitat
Nogge

Registriert seit: 15. Jul 2004
336 Beiträge
 
Delphi 7 Professional
 
#8

Re: ShellExecute und UPX

  Alt 20. Apr 2005, 16:32
Zitat:
Mit "ExtractFileName(filename)"? Na ja, bei Programmen, die in der Umgebung bekannt sind (PATH) mag das gehen.
Hö? Was willst du mir damit sagen?
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#9

Re: ShellExecute und UPX

  Alt 20. Apr 2005, 16:35
Zitat von Nogge:
Zitat:
Mit "ExtractFileName(filename)"? Na ja, bei Programmen, die in der Umgebung bekannt sind (PATH) mag das gehen.
Hö? Was willst du mir damit sagen?
Dass du damit den Pfad der anderen Anwendung wegschnipselst. Wenn der Pfad der Anwendung nicht in der PATH-Variable festgelegt wurde, startet da gar nichts!

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Nogge

Registriert seit: 15. Jul 2004
336 Beiträge
 
Delphi 7 Professional
 
#10

Re: ShellExecute und UPX

  Alt 20. Apr 2005, 16:42
Also bei mir funktioniert alles korrekt. Euer angeblicher Pfad-Parameter ist aber in Wirklichkeit der FileName-Parameter, erst nach dem Parameter-Parameter kommt der DIR-Parameter, worin ich den Pfad für die Datei angegeben habe.
  Mit Zitat antworten Zitat
Antwort Antwort


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 07:47 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