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

Вниз

В чем может быть проблема при получении данных из буфера   Найти похожие ветки 

 
Александр Иванов ©   (2006-09-27 18:23) [0]

Конечно не совсем по месту, но может кто знает. На C#, Framework 2.0. Открываю Excel выбираю область, вставляю в буфер, все средствами COM. Проверяю - делаю "Вставить" в блокноте - есть данные. Пытаюсь получить:

IDataObject data = Clipboard.GetDataObject();
if (data != null)
{
  if (data.GetDataPresent(DataFormats.CommaSeparatedValue))
  {
     StreamReader reader = new   StreamReader(data.GetData(DataFormats.CommaSeparatedValue) as Stream);
     string csv = reader.ReadToEnd();
...


Так вот data всегда равна null. Есть одно но, этот код выполняется в отдельном потоке. Тот же код проверяю в отдельном приложении - все работает. Дело в том, что это универсальный способ получения данных из Excel, я конечно в этом случае могу обойтись без буфера, но так получаются и диаграммы в виде картинок и прочее.


 
Ломброзо ©   (2006-09-27 18:35) [1]

Попробуйте ApartmentState потока установить в STA


 
Александр Иванов ©   (2006-09-27 18:47) [2]


> Ломброзо ©   (27.09.06 18:35) [1]

Спасибо, даже не ожидал столь быстрый ответ :)


 
Ломброзо ©   (2006-09-27 19:00) [3]

Работает?


 
Lamer@fools.ua ©   (2006-09-27 19:19) [4]

>>Ломброзо ©   (27.09.06 19:00) [3]

Это не важно. Главное, ответ быстрый ;o)


 
default ©   (2006-09-27 20:57) [5]

небольшой оффтопик
в екселе можно выделить кусок листа и отравить письмо с телом письма ввиде этого куска, как это программно сделать в C# не знаете?(выделить не проблема, главное как отправить этот выделенный кусок телом письма)


 
Ломброзо ©   (2006-09-27 21:58) [6]

Универсальный ответ на все вопросы по работе с объектной моделью MS Office: пишем макрос, что-то делаем, тормозим макрос, смотрим код


 
Александр Иванов ©   (2006-09-28 07:44) [7]


> Ломброзо ©   (27.09.06 19:00) [3]

Конечно, поэтому и благодарил :)



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

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

Наверх




Память: 0.48 MB
Время: 0.065 c
2-1159528585
Term
2006-09-29 15:16
2006.10.22
Как программно выделить строку в TMemo


2-1159952549
Галинка
2006-10-04 13:02
2006.10.22
Есть ли трансляторы с Си на Дельфи


3-1156827594
Layner
2006-08-29 08:59
2006.10.22
Не могу прогнать запрос из Delphi в бд Access, поле с датой..


15-1159252551
Курдль
2006-09-26 10:35
2006.10.22
"Графическое наследование ДатаСэтов" в Delphi .NET


3-1156424790
ttt_111
2006-08-24 17:06
2006.10.22
Общий доступ к таблице.