| Autor |
Beitrag |
TheSECONDJoker
Hält's aus hier
Beiträge: 13
|
Verfasst: Mo 28.02.05 10:15
hi @ll,
hab mal eine frage. wie kann ich mit delphi einen hostnamen des lokalen systems abfragen und außerdem dies os version?
ich will ein programm schreiben, welches quasi beim Laden der Form automatisch vorgegene dateien sichert.
dazu muss ich wissen, welches os benutzt wird (um ordnerpfade flexibel zu machen) und welchen hostnamen das lokale system hat (da jeder host seinen eigenen ordner zum sichern haben muss).
ich habe in der delphi-hilfe eine funktion (copyfile) gefunden, kann ich die hier zum kopieren benutzen?
gruß
thesecondjoker
|
|
retnyg
      
Beiträge: 2754
SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
|
Verfasst: Mo 28.02.05 10:20
mit GETENV kannst du die umgebungsvariablen auslesen, welche u.a. die Windows-Version, den Programme-Ordner, den Windows-Ordner und den Profilpfad des angemeldeten users sowie den rechnernamen beinhalten. also genau das was die kommandozeile anzeigt wenn du den befehl set eintippst
edit: bei delphi 7 heisst der befehl GetEnvironmentVariable
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 28.02.05 13:32
Und für alles gibt es auch wunderschöne API Funktionen die man nur aufrufen braucht....
|
|
TheSECONDJoker 
Hält's aus hier
Beiträge: 13
|
Verfasst: Fr 04.03.05 14:01
hi,
sorry das die rückmeldung so lange dauert, hatte zwischenprüfung...musste also lernen..
ich habe das versucht, konnte aber leider nicht wirklich haurausfinden wie das funktioniert. ich hab die delphi hilfe durchsucht wien blöder, doch wurde auch hier (delphi 7) nicht ganz eindeutig gesagt, wie man es machen muss (zumindestens nicht für rel. newbies), da ist die msdn library ja schon ein wenig besser bzw. einfacher gewesen, wenn man das mal so anmerken darf.
kann mir mal jemand den code komplett hinschreiben, vor mir aus anhand des beispiels: bei klick auf button wird die os version in ein label oder textfeld o.ä. geschrieben.
ansonsten komme ich glaube ich nicht weiter.
da die api, wie lucky bereits erwähnt hat, sehr viel kann, und ich auch daten wie ip-adresse auslesen möchte, wäre ich auch offen für api beispiele.
es sei nur nochmal kurz so am rande darauf hingewiesen, das mein frage mit dem copyfile noch nicht beantwortet ist, vielleicht kann sich dazu noch jemand äußern.
gruß
thesecondjoker
|
|
retnyg
      
Beiträge: 2754
SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
|
Verfasst: Fr 04.03.05 14:07
Delphi-Quelltext 1:
| edit1.Text := getenvironmentvariable('COMPUTERNAME'); |
_________________ es gibt leute, die sind genetisch nicht zum programmieren geschaffen.
in der regel haben diese leute die regel...
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 04.03.05 14:28
|
|
retnyg
      
Beiträge: 2754
SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
|
Verfasst: Fr 04.03.05 19:54
| Luckie hat folgendes geschrieben: | | retnyg hat folgendes geschrieben: | Delphi-Quelltext 1:
| edit1.Text := getenvironmentvariable('COMPUTERNAME'); | |
Was will uns der Künstler damit sagen?  |
das hier ?
| TheSECONDJoker hat folgendes geschrieben: | | wie kann ich mit delphi einen hostnamen des lokalen systems abfragen und außerdem dies os version? |
zu punkt b) edit1.Text := getenvironmentvariable('OS');
edit:
| TheSECONDJoker hat folgendes geschrieben: | | dazu muss ich wissen, welches os benutzt wird (um ordnerpfade flexibel zu machen) |
die flexiblen ordnerpfade kriegst du auch per getenv:
| retnyg hat folgendes geschrieben: | | mit GETENV kannst du die umgebungsvariablen auslesen, welche u.a. die Windows-Version, den Programme-Ordner, den Windows-Ordner und den Profilpfad des angemeldeten users sowie den rechnernamen beinhalten. also genau das was die kommandozeile anzeigt wenn du den befehl set eintippst |
| set hat folgendes geschrieben: |
C:\winxp\system32>set
ALLUSERSPROFILE=C:\Dokumente und Einstellungen\All Users
APPDATA=C:\Dokumente und Einstellungen\Administrator\Anwendungsdaten
CLIENTNAME=Console
CommonProgramFiles=C:\Programme\Gemeinsame Dateien
COMPUTERNAME=fu
ComSpec=C:\WINNEU\system32\cmd.exe
CYGWIN=tty
HOMEDRIVE=C:
HOMEPATH=\Dokumente und Einstellungen\Administrator
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 15 Model 2 Stepping 9, GenuineIntel
PROCESSOR_LEVEL=15
PROCESSOR_REVISION=0209
ProgramFiles=C:\Programme
PROMPT=$P$G
SESSIONNAME=Console
SystemDrive=C:
SystemRoot=C:\WINNEU
TEMP=C:\Temp
TMP=C:\Temp
USERDOMAIN=fu
USERNAME=Administrator
USERPROFILE=C:\Dokumente und Einstellungen\Administrator
windir=C:\WINNEU
include=c:\programme\devstudio\vc\include;c:\programme\devstudio\vc\atl\include;c:
\programme\devstudio\vc\mfc\include;%include%
lib=c:\programme\devstudio\vc\lib;c:\programme\devstudio\vc\mfc\
lib;%lib%
LOGONSERVER=\\fu
MSDevDir=C:\Programme\DevStu
dio\SharedIDE
NUMBER_OF_PROCESSORS=2
OS=Windows_NT
Path=c:\programme\devstudio\vc\bin
PATHEXT=.COM;.EXE;.BAT;.CMD
|
_________________ es gibt leute, die sind genetisch nicht zum programmieren geschaffen.
in der regel haben diese leute die regel...
|
|
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 04.03.05 21:13
Nichts gegen Umgebungsvariablen, aber problematisch wird es unter 9x/ME, wo bestimmt die Hälfte deiner Aufzählung nicht existiert. Darum empfehle ich einfach mal die passenden Shell-Funktionen zum Ermitteln von Ordnern, bevor noch irgendwer auf die Einträge in der Registry verweist. 
|
|
|