Alloc
Новичок
Приветствую! Собственно сабж.
этот код не работает на unicode версии. Как это можно исправить?
Код:
[Setup]
AppName=MyApp
AppVername=MyApp
DefaultDirName={pf}\MyApp
[code]
#ifdef UNICODE
#define A "W"
#else
#define A "A"
#endif
function GetVolumeInformation(PathName, VolumeName: PAnsiChar; VolumeNameSize, VolumeSerialNumber, MaxComponentLength, FileSystemFlags: Longint; FileSystemName: PAnsiChar; FileSystemNameSize: Longint): Longint;
external 'GetVolumeInformation{#A}@kernel32.dll stdcall';
function NextButtonClick(CurPageID: Integer): Boolean;
var VolumeName, FileSystemName: String;
VolumeSerialNo, MaxComponentLength, FileSystemFlags: Longint;
begin
Result := True;
if CurPageID = wpSelectDir then begin
FileSystemName:= StringOfChar(' ', 32); VolumeName:= StringOfChar(' ', 256);
GetVolumeInformation(PAnsiChar(ExtractFileDrive(WizardForm.DirEdit.Text)+'\'), PAnsiChar(VolumeName), 255, VolumeSerialNo, MaxComponentLength, FileSystemFlags, PAnsiChar(FileSystemName), 31);
if Pos('NTFS', FileSystemName)=0 then begin
MsgBox('Установка данного продукта возможна только на диск с файловой системой NTFS.'#13'Пожалуйста, измените путь установки.', mbError, mb_Ok);
Result := False ;
end;
end;
end;