![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
AccessViolation
cross © (2010-11-26 13:14:00)Почему возникает ошибка?
var
S: string;
begin
S := RT_RCDATA;
ShowMessage(S);
end;
clickmaker (2010-11-26 13:53:00) [1]Ares_type := '#10';
RWolf (2010-11-26 13:39:00) [2]
> мне нужно формировать строку
RT_RCDATA — это идентификатор, в откомпилированной программе такого набора символов нет.
cross (2010-11-26 13:29:00) [3]
> Что такое RT_RCDATA
тип ресурса.
> Просто не нужно присваивать это значение строке
мне нужно формировать строку 'res://[имя файла]/[тип ресурса]/[имя ресурса]'.
Format('res://%s/%s/%s', [ParamStr(0), Ares_type, Ares_name])
Ares_type: string; // тип ресурса
RWolf (2010-11-26 13:25:00) [4]а сыплется потому, что обращение к памяти по адресу 10 вызывает нарушение доступа.
RWolf (2010-11-26 13:22:00) [5]
> cross (26.11.10 13:20) [5]
Просто не нужно присваивать это значение строке.
cross (2010-11-26 13:20:00) [6]
> const
> RT_RCDATA = PChar(10);
в смысле? Мне переобъявить в моем модуле? Почему все-таки сыпется AccessViolation. Работаю в Delphi XE.
Anatoly Podgoretsky (2010-11-26 13:19:00) [7]> cross (26.11.2010 13:14:00) [0]
Что такое RT_RCDATA
RWolf (2010-11-26 13:18:00) [8]
const
RT_RCDATA = PChar(10);
RWolf (2010-11-26 13:17:00) [9]хотя, нет, вру — что-то в ресурсах не инициализировано.
RWolf (2010-11-26 13:15:00) [10]в этом коде всё правильно.