Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Library: Windows API / MS.NET Framework API (https://www.delphipraxis.net/20-library-windows-api-ms-net-framework-api/)
-   -   Delphi Den Computernamen ermitteln (https://www.delphipraxis.net/14777-den-computernamen-ermitteln.html)

Cuchulainn 15. Jan 2004 12:44


Den Computernamen ermitteln
 
Diese Funktion ermittelt den Computernamen und gibt ihn zurück.

Delphi-Quellcode:
function FComputername: String;
var
  CompName: Array [0 .. 256] of char;
  size: DWORD;
begin
  size := 256;
  GetComputerName(Compname, size);
  Result := CompName;
end;
[edit=Matze]Code formatiert. Mfg, Matze[/edit]

negaH 15. Jan 2004 12:53

Re: Den Computernamen ermitteln
 
Delphi-Quellcode:
function ComputerName: String;
var
  Size: DWord;
begin
  Size := MAX_PATH;
  SetLength(Result, Size);
  if not GetComputerName(PChar(Result), Size) then Size := 0;
  SetLength(Result, Size);
end;
Schont den Stack. Gruß Hagen

Luckie 15. Jan 2004 12:55

Re: Den Computernamen ermitteln
 
Erstens sollte man für die länge des Buffers die Konstante MAX_COMPUTERNAME_LENGTH + 1 nehmen und zweitens wäre es wohl sinnvoll, dass Array auf die wirkliche Länge des Computernamens abzuschneiden.

Bei mir würde das so aussehen:
Delphi-Quellcode:
function ComputerName: String;
var
  Size: DWORD;
begin
  Size := MAX_COMPUTERNAME_LENGTH + 1;
  SetLength(Result, Size);
  if GetComputerName(PChar(Result), Size) then
    SetLength(Result, Size)
  else
    Result := '';
end;

Alexander 25. Jan 2004 14:50

Re: Den Computernamen ermitteln
 
und wenn man das mit .NET machen will, schaut man sich die Environment.MachineName-Eigenschaft an...


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