Delphi - GetVolumeInformation

 
Vista:

GetVolumeInformation

Publicado por Carlos (16 intervenciones) el 29/11/2002 16:56:13
Buenos dias, añadi a mi programa la función 'GetVolumeInformation', y el compilador me dice q es una funcion no reconocida, la ayuda me dice q pertenece a WinBase.h, donde se añaden los header o que me falta definir para q me reconosca el comando??

Gracias por la ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:GetVolumeInformation

Publicado por Ernesto D'Spirito (706 intervenciones) el 29/11/2002 21:22:56
La API GetVolumeInformation supuestamente se encuentra declarada en la unidad Windows, por lo que tendrías que agregar esta unidad a la cláusula Uses de la sección Implementation de tu unidad.

De todos modos, ya que estamos, cuando tienes que acceder a una API no declarada en alguna unidad, te fijas como es la cabecera en C y haces las conversiones correspondientes para declararla en Delphi:

interface

function GetVolumeInformation(lpRootPathName: PChar;
lpVolumeNameBuffer: PChar; nVolumeNameSize: DWORD; lpVolumeSerialNumber: PDWORD;
var lpMaximumComponentLength, lpFileSystemFlags: DWORD;
lpFileSystemNameBuffer: PChar; nFileSystemNameSize: DWORD): BOOL; stdcall;
{$EXTERNALSYM GetVolumeInformation}

implementation

function GetVolumeInformation; external 'kernel32.dll' name 'GetVolumeInformationA';

No es estrictamente necesario que la declaración esté en la Interface (puede estar en la Implementation), pero si está en la Interface, puedes llamar la API desde todas las unidades que usen esa unidad donde la declaras.

Espero que te sirva.

Ernesto D'Spirito
http://www.latiumsoftware.com/es
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar