![]() |
TurboPascal Windows Benutzernamen anzeigen
Hallo,
es geht um Turbo Pascal 7, ich habe hier Beispiel Code mit dem ich den Computernamen eines Rechners ermitteln kann, egal ob Win9x oder WinXP, jedoch würde ich gerne den Benutzernamen angezeigt bekommen und nicht den Computernamen. Hat jemand eine idee wie man das hinbekommt !?
Code:
Function Netz_Name : String;
Var Register : Registers; Puffer : Array[1..15] Of Char; Temp : String[15]; Index : Byte; Begin Temp := ''; With Register Do Begin AH:= $5e; AL:= $0; DX := Ofs(Puffer); DS := Seg(Puffer); Intr($21,Register); If CH = 1 Then Begin For Index := 1 to 15 Do Temp := Temp + Puffer[Index]; Temp := FCutBlankVH(Temp); Temp := UpString(Temp); End;{if} End;{with} Netz_Name := Temp; End;{Function Netz_Name} mfg TUX |
Re: TurboPascal Windows Benutzernamen anzeigen
Keine Ahnung, wo der Code den Computernamen herholt, scheint aber mehr als abenteuerlich zu sein die Methode. Für beides gibt es API-Funktionen:
Delphi-Quellcode:
Und eine Forensuche hätte dir auch schon die Antwort gegeben. Das nächste mal bitte erst suchen.
function GetCurrentUserW: WideString;
var Size : DWORD; begin Size := MAX_COMPUTERNAME_LENGTH * 2 + 1; SetLength(Result, Size); if GetUserNameW(PWideChar(Result), Size) then SetLength(Result, Size) else Result := ''; end; |
Re: TurboPascal Windows Benutzernamen anzeigen
Zitat:
Turbo Pascal 7 ist nicht Windows ;) @TUX_der_Pinguin: Schau die mal die Umgebungsvariabeln an, die sollte man auf unter DOS ermitteln können. In USERNAME steht dann eigentlich auch der selbige drinne. ...:cat:... |
Re: TurboPascal Windows Benutzernamen anzeigen
Gut, er sprach zwar von Turbo Pascal 7 aber eben auch von Windows 98 und Windows XP, daher bin ich davon ausgegangen, es ginge im die Windows Benutzernamen in einem Programm, das unter Windows läuft.
|
Re: TurboPascal Windows Benutzernamen anzeigen
Ja es geht um den Windows Benutzernamen in einem quasi Dos Programm welches in TurboPascal geschrieben ist.
Daher sind Windows API Funtkionen von Delphi nicht verfügbar. An die Umgebungsvariablen habe ich auch gedacht nur gibt es 'USERNAME' unter WinXP aber nicht unter Win9x. Daher auch keine Lösung. |
Re: TurboPascal Windows Benutzernamen anzeigen
Zitat:
|
Re: TurboPascal Windows Benutzernamen anzeigen
Also ich wüßte nicht wie ich in einem TurboPascal Programm Windows API Funktionen rein bekomme.
|
Re: TurboPascal Windows Benutzernamen anzeigen
Was ist denn eigentlich ein "quasi" DOS-Programm? Entweder Schwanger oder nicht, "quasi" schwanger gibt es nicht. :?
|
Re: TurboPascal Windows Benutzernamen anzeigen
Ich wollte damit ausdrücken das es ein DOS Programm ist welches unter Windows läuft,
aber diese ganze diskussion bringt mir nix, ich würde gern mit dem Problem weiter kommen den Benutzernamen von einem Windows PC in einem DOS Programm anzuzeigen. |
Re: TurboPascal Windows Benutzernamen anzeigen
Ist es wirklich ein DOS-Programm oder ein Consolen-Programm?
Für ein DOS-Programm kannst du die Umgebungsvariable USERNAME abfragen, für ein Consolen-Programm ist Luckie-Lösung zu empfehlen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:20 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