ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
 
 
Опции темы Поиск в этой теме Опции просмотра

Delphi: Ошибка при записи в реестр функцией RegSetValueExW
  #1  
Старый 22.12.2008, 18:27
Аватар для Ta2i4
Ta2i4
Новичок
Регистрация: 10.09.2007
Сообщений: 17
Провел на форуме:
19240

Репутация: 5
По умолчанию Delphi: Ошибка при записи в реестр функцией RegSetValueExW

Я юзаю Delphi 2007 и TMS Unicode Components Pack 1.7.0.2 (бывшие TNT Unicode Controls).

Подключаю в uses юнит TntRegistry.

В коде:
Код:
if myreg.OpenKey('*\shell\MyApp\command',True)
then begin
  myreg.WriteString('','"'+TntApplication.ExeName+'" "%1"');
  myreg.CloseKey;
end;
Возникает ошибка. Если закомментировать myreg.WriteString, то ошибки нет. Ошибка кроется именно в WriteString (пока не проверял WriteInteger, WriteBool и другие). Ошибка - "Failed to set data for ''."

Изучаю функцию WriteString. Её код (лишнее удалено):
Код:
procedure TTntRegistry.WriteString(const Name, Value: WideString);
begin
   PutData(Name, PWideChar(Value), (Length(Value)+1) * SizeOf(WideChar), rdString);
end;
Смотрю PutData, куда и отсылает компилятор (лишнее удалено):
Код:
procedure TTntRegistry.PutData(const Name: WideString; Buffer: Pointer;
  BufSize: Integer; RegData: TRegDataType);
var
  DataType: Integer;
begin
    DataType := RegDataToDataType(RegData);
    if RegSetValueExW(CurrentKey, PWideChar(Name), 0, DataType, Buffer,
      BufSize) <> ERROR_SUCCESS then
      raise ERegistryException.CreateResFmt(@SRegSetDataFailed, [Name]);
end;
Вот не пойму, почему RegSetValueExW не пишет в реестр. В результате этого и возникает ошибка.

Последний раз редактировалось Ta2i4; 22.12.2008 в 18:37..
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Gta 4 InfernoNet Болталка 593 27.04.2010 17:09
Перехват Gsm пакетов SNIFF Сотовый фрикинг 16 27.12.2009 22:25
Комп пищит и дымиться MrTrick Аппаратное обеспечение 54 15.08.2009 01:09
Ошибки Windows 2 SVipeR Windows 9 02.03.2009 19:28
Ошибки Windows dinar_007 Windows 19 01.07.2007 13:32



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ