Потрясающая телепатия! Да это Inno Setup! Помоги! Хотя за идею уже спасибо! Но блин, я не справлюсь! Хочешь тайно в личку напиши.
А что тут такого секретного? Авось ещё кому сгодится. Я вытащил Inno Setup 5.3.10 и накропал вот такое: Код (Text): // Прототипы и константы const // для samDesired KEY_QUERY_VALUE = 1; KEY_SET_VALUE = 2; function RegOpenKeyEx( hKey: Integer; const lpSubKey: AnsiString; ulOptions: Integer; samDesired: Integer; var hkeyResult: Integer ): Integer; external 'RegOpenKeyExA@AdvAPI32.DLL stdcall'; type Data = array [0..259] of Byte; function RegQueryValueEx( hKey: Integer; const lpValueName: AnsiString; lpReserved: Integer; var lpType : Integer; var lpData: Data; var lpcbData: Integer ): Integer; external 'RegQueryValueExA@AdvAPI32.DLL stdcall'; function InitializeSetup(): Boolean; var rc, hKey, ValueType, ValueDataLen, i: Integer; ValueData: Data; Value: string; begin rc := RegOpenKeyEx( HKEY_LOCAL_MACHINE, 'Software\Microsoft\Windows\CurrentVersion\App Paths\Far.exe', 0, KEY_QUERY_VALUE, hKey ); rc := MsgBox(Format('RegOpenKeyEx() вернула %u'+#13#10 +'Хэндл ключа: %x', [rc, hKey]), mbInformation, MB_OK); ValueDataLen := SizeOf(ValueData); rc := MsgBox(Format('Перед вызовом RegOpenKeyEx():'+#13#10 +'cbData: %u', [ValueDataLen]), mbInformation, MB_OK); rc := RegQueryValueEx( hKey, 'Path', 0, ValueType, ValueData, ValueDataLen ); rc := MsgBox(Format('RegQueryValueEx() вернула %u'+#13#10 +'cbData: %u'+#13#10 +'Type: %u', [rc, ValueDataLen, ValueType]), mbInformation, MB_OK); Value := ''; // признаю своё поражение и копирую по букве for i := 0 to ValueDataLen-1 do Value := Value+Chr(ValueData[i]); rc := MsgBox( Value, mbInformation, MB_OK ); Result := False; end; Корявенько, но работает. Нормально со строками не получилось. Я последний раз с Паскалем дружил лет пятнадцать назад.
Интересно, почему в ide (ansi) поддерживаются символы © ® и в то же время не поддерживается такое £ (A3) Да и в блокнотах всяких тоже самое. Папку £ создать на fat32 можно, но проги глючат, например блокнот не видит файлы. Что за привилегии тогда для кодов AE A9 ?
Есть кодовая страница 1251. В ней есть © и ®, но нет £ (который есть в 1252, к примеру). Странного мало.