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

Вниз

Чем может быть вызвана ошибка обращения к clipboard у?   Найти похожие ветки 

 
cvg   (2004-11-17 17:39) [0]

Hi All! Subj. На последней строчке в этом куске:

 windows.BringWindowToTop(h_pars);
 PressKeys("Ctrl+C",10); // эмуляция нажатия на клавиши
 line := Clipboard.AsText;

в стандартном модуле Clipbrd в этои вот месте:

   if not OpenClipboard(FClipboardWindow) then
     raise Exception.CreateRes(@SCannotOpenClipboard);

прога орет, что не может прочесть буфер. В чем может быть дело?


 
Jeer ©   (2004-11-17 17:44) [1]

Значит там не текст:(


 
cvg   (2004-11-17 17:49) [2]

Ctrl-C грабит экран в окне, которое стало делается активным в первой приведенной строчке, правильно? Там таблица с меняющимися данными. Последняя строчка преобразует все, что можно, в текст. Так ведь, вроде?


 
cvg   (2004-11-17 18:22) [3]

Ну что, больше ни у кого никаких мыслей нет?


 
Jeer ©   (2004-11-17 18:51) [4]

так проверь
Clipboard.HasFormat(CF_TEXT):boolean;


 
cvg   (2004-11-18 15:03) [5]

Не, все-таки она на второй из нижеприведенных строчек она все равно орет "Cannot open Clipboard" :((

   if not Clipboard.HasFormat(CF_TEXT):boolean
     if not OpenClipboard(FClipboardWindow) then
       raise Exception.CreateRes(@SCannotOpenClipboard);


 
VMcL ©   (2004-11-18 15:07) [6]

>>cvg  (18.11.04 15:03) [5]

Что говорит GetLastError или SysErrorMessage?


 
cvg   (2004-11-18 15:36) [7]

Думешь, это что-нить даст? Самое-то тут противное то, что ана все ети дела грабит с экрана (хотя есть и режим работы с данными из файла), а значит я не могу подлезть с отладчиком...


 
Amoeba ©   (2004-11-18 15:55) [8]


> ана все ети дела грабит с экрана

В таком случае в Clipboard нет никакого текста и
line := Clipboard.AsText;
не лезет ни в какие ворота.


 
cvg   (2004-11-18 16:23) [9]

Хм, а почему ж тогда рекомендованный Clipboard.HasFormat(CF_TEXT):boolean пропустил все это?


 
Amoeba ©   (2004-11-18 16:28) [10]

выполни после "грабления" экрана вот этот код:

if Clipboard.HasFormat(CF_TEXT) then
 line := Clipboard.AsText
else
 ShowMessage("Bla-bla-bla!");


 
cvg   (2004-11-18 17:14) [11]

Попробовал. Все равно на строке line := Clipboard.AsText выдала ту же ошибку -- "Cannot open Clipboard". Да и не думаю я, что это изменение помогло бы, потому что до этого у меня так вот было:

 try
  line := Clipboard.AsText;
 except
  raise Exception.Create("blah-blah-blah");
 end;


 
cvg   (2004-11-18 17:15) [12]

Попробовал. Все равно на строке line := Clipboard.AsText выдала ту же ошибку -- "Cannot open Clipboard". Да и не думаю я, что это изменение помогло бы, потому что до этого у меня так вот было:

 try
  line := Clipboard.AsText;
 except
  raise Exception.Create("blah-blah-blah");
 end;


 
VMcL ©   (2004-11-18 17:21) [13]

>>cvg  (18.11.04 15:36) [7]

>Думешь, это что-нить даст?

Конечно, не даст. Ведь у меня хобби такое - давать бесполезные советы.


 
Amoeba ©   (2004-11-18 17:28) [14]

Если у тебя в буфере изображение захваченное с экрана, то после
if Clipboard.HasFormat(CF_TEXT) then
строка
line := Clipboard.AsText;
выполняться не будет

и не надо никаких
try
 ...
except
 ...
end

Просто нужно проверить формат содержимого Clipboard.

И еще. Так и не последовало никакой реакции на Amoeba ©   (18.11.04 15:55) [8]


 
cvg   (2004-11-18 17:45) [15]

Ну это-то понятно. Конкретно показываю, как я по твоему совету сделал:

 if Clipboard.HasFormat(CF_TEXT) then
  line := Clipboard.AsText
 else
  raise Exception.Create("blah-blah-blah");

Все равно она дошла до Clipboard.AsText и обругалась известным образом. Ж%:((



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

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

Наверх




Память: 0.5 MB
Время: 0.038 c
3-1100009021
gedd
2004-11-09 17:03
2004.12.05
btr файлы, чем открыть?


3-1099838464
ser_ega
2004-11-07 17:41
2004.12.05
Работа программы на другом компе!


10-1069230228
РВА
2003-11-19 11:23
2004.12.05
Запуск приложения на клиенте


1-1100868269
yura2
2004-11-19 15:44
2004.12.05
Как показать документ Word в окне своей программы?


1-1100702931
Анатолий
2004-11-17 17:48
2004.12.05
Ресурсы в больших проектах.