Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.30;
Скачать: CL | DM;

Вниз

Out of Memory !!!   Найти похожие ветки 

 
Карлсон ©   (2002-08-14 01:17) [0]

Помогите плиииз!

вот код:

procedure TForm1.Button1Click(Sender: TObject);
var
Cds: TCopyDataStruct;
begin
GetMem (Cds.lpData, Cds.cbData );
SendMessage (HWND,WM_GetText, 50, Cardinal(Pchar(Cds.lpdata)));
Memo1.Lines.Add(Pchar(Cds.lpdata));
FreeMem (Cds.lpData);
end;

HWND естественно текущий HWND нужного мне RichEdit"а к примеру.
Почему иногда возникает сабж, а иногда нет???
В чем моя ошибка?


 
Dmk ©   (2002-08-14 02:21) [1]

А где вычисления размера Cds.cbData ?

Это из MSDN

COPYDATASTRUCT
The COPYDATASTRUCT structure contains data to be passed to another application by the WM_COPYDATA message.

typedef struct tagCOPYDATASTRUCT { // cds
DWORD dwData;
DWORD cbData;
PVOID lpData;
} COPYDATASTRUCT;

Members
dwData
Specifies up to 32 bits of data to be passed to the receiving application.
cbData
Specifies the size, in bytes, of the data pointed to by the lpData member.

lpData
Pointer to data to be passed to the receiving application. This member can be NULL.

Пробовал Ваш код, так пераметр Cds.cbData при входе в процедуру
принимает какие угодно значения. Отсюда и ваша ошибка.
Размер данных должен быть определен заранее.



Страницы: 1 вся ветка

Текущий архив: 2002.09.30;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.014 c
3-98012
кгыыыыыд
2002-09-10 10:42
2002.09.30
Помогите с экспортом из Excel


1-98216
Dmitriy Polskoy
2002-09-18 14:28
2002.09.30
MDI приложение


14-98306
Карлсон
2002-09-03 20:39
2002.09.30
У кого какой модем?


14-98279
Aleksey Pavlov
2002-09-02 13:36
2002.09.30
Фотографии со второй встречи Мастаков в Москве.


1-98090
Создатель настоящий
2002-09-18 22:47
2002.09.30
Заменить файл