Einzelnen Beitrag anzeigen

Benutzerbild von Rued
Rued

Registriert seit: 14. Mai 2008
Ort: Schleching
66 Beiträge
 
Delphi 12 Athens
 
#13

Re: Code für Inno-Setup gesucht

  Alt 12. Jun 2009, 20:15
Zitat von Codewalker:
InnoSetup kann doch auch Funktionen aus DLLs importieren und GetVolumeInformation sollte sich doch problemlos so importieren lassen (aus der Kernel32.dll. Genaue Infos sind ja in der Windows.pas drin). Benötigte Konstanten kann man da auch schnell deklarieren - dann spart man sich temporäre Programme und diverse Umwege
Wenn es eine elegantere Methode gibt, würde ich Dich bitten, mir noch etwas zu helfen. In der windows.pas habe ich das gefunden:

Delphi-Quellcode:
function GetVolumeInformation(lpRootPathName: PChar;
  lpVolumeNameBuffer: PChar; nVolumeNameSize: DWORD; lpVolumeSerialNumber: PDWORD;
  var lpMaximumComponentLength, lpFileSystemFlags: DWORD;
  lpFileSystemNameBuffer: PChar; nFileSystemNameSize: DWORD): BOOL; stdcall;
{$EXTERNALSYM GetVolumeInformation}
In meinen Programmen habe ich mit
if GetvolumeInformation(pchar(drive + ':\'), nil, 0, id, dwx, dwy, nil, 0) then result := copy(IntToStr(ID^),1,8) gearbeitet, da ich nur die ersten acht Ziffern benötige.

Wie komme ich über den Import an den String?

Gruß

Rüd

[edit=mkinzler]Delphi-Tags eingefügt Mfg, mkinzler[/edit]
Rüdiger Droste
  Mit Zitat antworten Zitat