Ach so, über gebe ich bei
GetVolumePathNamesForVolumeName das Ziel so:
Delphi-Quellcode:
var
VolumePathNames : String;
begin
if GetVolumePathNamesForVolumeName(PChar(aVolumeRec.VolumeStr),
@VolumePathNames[1],
BufferLength, ReturnLength) then
aVolumeRec.PathStr := VolumePathNames;
Kommt es zu einer ZV.
Danke
Der zweite Parameter erwartet einen ausreichend großen Buffer in der das Ergebnis geschrieben wird. @ auf einen String hast du den nicht!
Probier mal:
Delphi-Quellcode:
var
buffer: array[0...4096] of char;
begin
...
GetVolumePathNamesForVolumeName(PChar(aVolumeRec.VolumeStr),
@buffer,
SizeOf(buffer) div SizeOf(char), ReturnLength)
Windows Vista - Eine neue Erfahrung in Fehlern.