Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi datei erstellen?? (https://www.delphipraxis.net/3249-datei-erstellen.html)

ninja 3. Mär 2003 12:16


datei erstellen??
 
hallo.

ich habe da ein kleines problem.
und zwar wollte ich über die ShellExecute das programm ipconfig.exe mit folgenden parametern ausführen lassen (ipconfig.exe /all >c:\ip.txt).
ich habe die ShellExecute anweisung soweit das ipconfig.exe ausgeführt wird, nur leider wird die datei ip.txt nicht erstellt.
ich habe diesen befehl auch schon in der eingabeaufforderung von windows ausprobiert und da hat es funktioniert.
vieleicht weiß ja jemand was ich falsch mache.
thx im vorraus
ninja

Darty 3. Mär 2003 12:29

wie hast du es in dein code stehen ?

Tom 3. Mär 2003 12:42

Re: datei erstellen??
 
Zitat:

Zitat von ninja
ipconfig.exe /all >c:\ip.txt

"> c:\ip.txt" wird vom DOS-Fenster ausgewertet: Umlegung der Ausgabe in Datei. IPconfig hat damit nichts zu tun. Du must also eine DOS-Fenster starten:
Programm: GetEnvironmentVariable( 'COMSPEC' )
Parameter: ipconfig.exe /all >c:\ip.txt

Gruß Tom

thomasdrewermann 3. Mär 2003 13:01

Hallo Ninja,
herzlich willkommen in der Delphi-Praxis.
Ich denke deine Frage zielt darauf ab die IP-Adressen eines Rechners zu ermitteln. Falls ja kannst du folgenden Code dazu verwenden:
Delphi-Quellcode:
uses WinSock;

function GetLocalIPs: String;
type PPInAddr= ^PInAddr;
var
  wsaData: TWSAData;
  HostInfo: PHostEnt;
  HostName: Array[0..255] of Char;
  Addr: PPInAddr;
begin
  Result:='';
  if WSAStartup($0102, wsaData)<>0 then exit;
  try
    if gethostname(HostName, SizeOf(HostName)) <> 0 then exit;
    HostInfo:= gethostbyname(HostName);
    if HostInfo=nil then Exit;
    Addr:=Pointer(HostInfo^.h_addr_list);
    if (Addr=nil) or (Addr^=nil) then exit;
    Result:=StrPas(inet_ntoa(Addr^^));
    inc(Addr);
    while Addr^<>nil do begin
      Result:=Result+^M^J+StrPas(inet_ntoa(Addr^^));
      inc(Addr);
    end;
  finally
    WSACleanup;
  end;
end;
Ich hoffe es klappt.

MFG
Thomas

ninja 3. Mär 2003 14:39

hallo.
danke erstmal für die schnellen antworten.
ich hatte tatsächlich vorgehabt die ip-adressen auszulesen.
ich wollte das über die ipconfig und dann eine text-datei in ein memo ausgeben lassen. ausgabe in memo funktioniert.
@thomas
ich werde den quelltext auch mal ausprobieren.
@tom
da ich leider noch nicht soviel ahnung habe im programmieren mit delphi, habe ich folgendes von dir ausprobiert.
GetEnvironmentVariable('COMSPEC'): ('ipconfig.exe /all >c:\ip.txt');

das hat leider nicht funktioniert,
da ich auch nicht weiß wie ich diesen befehl benutzen muß.

Vieleicht kannst du mir ja jemand auf die sprünge helfen, wäre echt nett.

Thx ninja

TheXception 3. Mär 2003 17:22

Hast du's so schon probiert?


Code:
  ShellExecute(0,
               Nil,
               PChar('C:\App.exe'),
               Pchar('-Parameter'),
               Pchar('C:\StartDir'),
               SW_NORMAL);


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