GetVolumeSerial auf Linux mit FPC2.2.4?

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
Biarchiv
Beiträge: 7
Registriert: Fr 13. Feb 2009, 14:20

GetVolumeSerial auf Linux mit FPC2.2.4?

Beitrag von Biarchiv »

Hallo,

kann mir wer diese Code fpr FPC ins Linux übersetzen?
Als Drive : Char sollte immer das Laufwerk sein, wo sich die kompilierte ELF Datei befindet.

Code: Alles auswählen

function GetVolumeID(Drive : Char) : PCHar;
type
  TCharBuffer = array[0..255] of Char;
var num :  TCharBuffer;
begin
  GetVolumeInformation(pChar(Drive + ':\'), @num, sizeof(num), nil, DWord(nil^), DWord(nil^), nil, 0);
  result := num;
end;
Danke...
Zuletzt geändert von monta am Fr 6. Nov 2009, 14:13, insgesamt 1-mal geändert.
Grund: Codetags

Benutzeravatar
theo
Beiträge: 10950
Registriert: Mo 11. Sep 2006, 19:01

Re: GetVolumeSerial auf Linux mit FPC2.2.4?

Beitrag von theo »

Wozu benötigst du das denn?
Ich glaube, da gibt es auf Linux keine direktes Äquivalent.

Socke
Lazarusforum e. V.
Beiträge: 3178
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: GetVolumeSerial auf Linux mit FPC2.2.4?

Beitrag von Socke »

Unter Linux gibt es keine windows-ähnliche "Laufwerke". Wenn du Informationen über das Hardwaregerät oder die Partition haben willst, solltest du mal nach HAL suchen. UM herauszufinden, auf welchem Gerät eine Datei liegt, müsstest du die Ausgabe von mount auswerten.
theo hat geschrieben:Wozu benötigst du das denn?
Ich glaube, da gibt es auf Linux keine direktes Äquivalent.
Man kann zu entsprechenden Geräten die Informationen auch in Linux auslesen. In der Regel wird das aber niemand benötigen, außer du willst direkt auf die Hardware zugreifen (Systemprogrammierung).
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Re: GetVolumeSerial auf Linux mit FPC2.2.4?

Beitrag von creed steiger »

ich glaube bei
/dev/disk/by-id
ist sie dabei.

Biarchiv
Beiträge: 7
Registriert: Fr 13. Feb 2009, 14:20

Re: GetVolumeSerial auf Linux mit FPC2.2.4?

Beitrag von Biarchiv »

creed steiger hat geschrieben:ich glaube bei
/dev/disk/by-id
ist sie dabei.
Stimmt, ist wirklich dabei.

Ist der Path "/dev/disk/by-id" bei jedem Linux Hersteller der Selbe?

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Re: GetVolumeSerial auf Linux mit FPC2.2.4?

Beitrag von creed steiger »

Biarchiv hat geschrieben: Stimmt, ist wirklich dabei.

Ist der Path "/dev/disk/by-id" bei jedem Linux Hersteller der Selbe?
Puh,seit der Einführung von udev denke ich.Ist schon ein bissl her.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: GetVolumeSerial auf Linux mit FPC2.2.4?

Beitrag von mschnell »

by-id by-labe,l by-path, by-uuid sind nur links und zeigen alle auf dieselben pseudo-dateien.

Der Inhalt der pseudo-datei ist (vermutlich) byteweise der Inhalt der entsprechenden Partition. Da steht natürlich alles drin, wenn man weiß wie die Partionions-daten formatiert sind.

Man kann übrigens natürlich nur als User mit root-Rechten darauf zugreifen.

-Michael

Antworten