Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Fehler mit GetVolumeInformation (https://www.delphipraxis.net/90929-fehler-mit-getvolumeinformation.html)

Tiuri 26. Apr 2007 08:46


Fehler mit GetVolumeInformation
 
Hi,

ich versuche, unter Delphi 3 den Zipmaster zu compilieren. Ich komme bei folgendem Code aber auf eine Fehlermeldung:
Delphi-Quellcode:
  if (not FDriveFixed) and   // 1.72 only get Volume label for removable drives
  {If}(not GetVolumeInformation(pChar(FDrive), VolNameAry, NamLen, @DiskSerial,
    SysLen, SysFlags, nil, 0)) then
Delphi meldet den Fehler hinter SysLen. Die Fehlermeldung ist:
Code:
Die Typen der tatsächlichen und formalen Var-Parametern müssen übereinstimmen.
Ich hab hier auch schon danach gesucht, aber nichts gefunden.

ledil 26. Apr 2007 08:57

Re: Fehler mit GetVolumeInformation
 
Zitat:

Zitat von Tiuri
Hi,

ich versuche, unter Delphi 3 den Zipmaster zu compilieren. Ich komme bei folgendem Code aber auf eine Fehlermeldung:
Delphi-Quellcode:
  if (not FDriveFixed) and   // 1.72 only get Volume label for removable drives
  {If}(not GetVolumeInformation(pChar(FDrive), VolNameAry, NamLen, @DiskSerial,
    SysLen, SysFlags, nil, 0)) then
Delphi meldet den Fehler hinter SysLen. Die Fehlermeldung ist:
Code:
Die Typen der tatsächlichen und formalen Var-Parametern müssen übereinstimmen.
Ich hab hier auch schon danach gesucht, aber nichts gefunden.

GetVolumeInformation verlangt einen anderen Typ fuer die Variablen "SysFlags" oder "nil". Check doch einfach mal die Variablentypen der Funktion GetVolumeInformation und vergleich sie mit deinen.

Tiuri 26. Apr 2007 09:11

Re: Fehler mit GetVolumeInformation
 
in meiner Hilfe steht nichts über GetVolumeInformation und ich weiß auch nicht, wo sie deklariert ist. Diese Stelle ist auch das einzige Vorkommen von GetVolumeInformation

ledil 26. Apr 2007 09:20

Re: Fehler mit GetVolumeInformation
 
Zitat:

Zitat von Tiuri
in meiner Hilfe steht nichts über GetVolumeInformation und ich weiß auch nicht, wo sie deklariert ist. Diese Stelle ist auch das einzige Vorkommen von GetVolumeInformation

Unit Windows:

function GetVolumeInformation; external kernel32 name 'GetVolumeInformationA';

function GetVolumeInformationA(lpRootPathName: PAnsiChar;
lpVolumeNameBuffer: PAnsiChar; nVolumeNameSize: DWORD; lpVolumeSerialNumber: PDWORD;
var lpMaximumComponentLength, lpFileSystemFlags: DWORD;
lpFileSystemNameBuffer: PAnsiChar; nFileSystemNameSize: DWORD): BOOL; stdcall;

Tiuri 30. Apr 2007 13:26

Re: Fehler mit GetVolumeInformation
 
so, ich habe es geschafft.
ich habe zwei Variablen vom Typ DWord deklariert, ihnen die Werte von SysFlags und SysLen gegeben und sie statt diesen Konstanten an die Funktion übergeben.
Vielen Dank!


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