Советы по Delphi

         

Ошибка DDE/WinWord


Я нашел ошибку в DDEMAN.DCU.

В процедуре TDdeServerItem.CopyToClipboard пропущен вызов ClipBoard.Open. Я потратил на поиск ошибки 2 дня, зато теперь я могу соединиться с WinWord.

Gerald Dachs

Дополнения

Используя TDdeServerItem, я не мог копировать в буфер обмена и впоследствии вставлять данные в Excel. Чтобы проверить сказанное, достаточно запустить программу ddesrvr. Выберите "копировать" и посмотрите буфер обмена стандартной системной смотрелкой. Она сообщит вам "Unrecognized format" (неопознанный формат).

Для устранения этих досадных ошибок я внес следующие изменения в ddeman.pas:

  1. Добавьте Clipboard.Open перед первой попыткой TDdeServerItem.CopyToClipboard (только перед первой попыткой).

  • Также в TDdeServerItem.CopyToClipboard, я добавил другой null в конец LinkData. Не уверен, что это необходимо, но я думаю, что список необходимо терминировать двумя нулями (null).
  • Sam Lissok [000700]



    Содержание раздела