Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как вставить в редактор WORD содержимое буфера


Страницы:   1 2

Dema-X ©   (2004-11-24 06:27:00) 

WORD на мессагу wm_paste не реагирут хотя в блокнот вставка проиходит нормально
если же эмулировать нажатие клавиш типа CTRL+V или SHIFT+INS через keybd_event() то в блокнот вставляет опять нормально а в ворд раз 10 а то и больше в чем вся фигня так и не просеку?Как нормально вставить 1 раз.


Dema-X   (2004-12-05 07:30:00) [1]

.


Dema-X   (2004-12-01 05:55:00) [2]


> Я подозреваю, что все дело в версии ворда.

OFFICE XP + DElphi7->OFFICE XP


Dema-X   (2004-11-30 19:58:00) [3]


> [3] прекрасно работает. От содержимого буфера вообще ничего
> не зависит.

У меня валится


TUser   (2004-11-30 09:45:00) [4]


> YurikGL ©   (27.11.04 19:56) [9]
> Dema-X   (27.11.04 19:35) [8]
>
> Так... удаляй эту  вордаппликейшн и пиши следующий код:

[3] прекрасно работает. От содержимого буфера вообще ничего не зависит.

> Задай вопрос типа как по handle определить, какому приложению
> принадлежит окно

GetProcThreadId
При чем тут это? Я подозреваю, что все дело в версии ворда.


YurikGL   (2004-11-30 07:27:00) [5]

Посмотри
GetWindowText
и подобные функции из winapi

Вообще почитай про winapi там должны быть нужные комманды.


Dema-X   (2004-11-30 05:50:00) [6]


> YurikGL ©   (29.11.04 07:07) [17]
> Dema-X   (29.11.04 05:50) [16]
>
> Я тебе точно не скажу как, но по handle наверняка можно
> узнать заголовок окна или что-то подобное.
> Задай вопрос типа как по handle определить, какому приложению
> принадлежит окно или в яндексе поищи.

Поиск результата не дал :(


YurikGL   (2004-11-29 07:07:00) [7]

Dema-X   (29.11.04 05:50) [16]

Я тебе точно не скажу как, но по handle наверняка можно узнать заголовок окна или что-то подобное.
Задай вопрос типа как по handle определить, какому приложению принадлежит окно или в яндексе поищи.


Dema-X   (2004-11-29 05:50:00) [8]


> YurikGL ©   (28.11.04 15:57) [14]
> Ну тогда определи, в какое именно приложение нужно вставлять
> и пиши соответсвующий код.

Идей нет?


Dema-X   (2004-11-28 18:31:00) [9]

а как? Хэндл есть.
на SendMessage(SysHoo.Wnd, WM_PASTE, 0,0); ворд не реагирует
на
keybd_event( VK_CONTROL,$45,  0 , 0 );
keybd_event( VK_lCONTROL,$45, 0 , 0 );
keybd_event( $56,$45, 0 , 0 );
keybd_event( $56,$45,KEYEVENTF_KEYUP, 0 );
keybd_event( VK_CONTROL,$45,KEYEVENTF_KEYUP, 0 );
keybd_event( VK_lCONTROL,$45,KEYEVENTF_KEYUP, 0 );
вставляет несколько раз подряд ... вся проблема только в этом :(


YurikGL   (2004-11-28 15:57:00) [10]


> Dema-X   (28.11.04 14:31) [13]

Ну тогда определи, в какое именно приложение нужно вставлять и пиши соответсвующий код.


Dema-X   (2004-11-28 14:31:00) [11]

Нет не проще моя программа унивеслальная и вставляет по нажатию определённой горячей клавиши в том месте где установлен курсор а если для каждой программы делать свою кнопку то что получится?для ворда для ехеля для блокнота для дельфи для ... Сам понимаешь не шибко красиво выходит :(


YurikGL   (2004-11-27 20:20:00) [12]


> Dema-X   (27.11.04 20:06) [11]

А не проще из твоего приложения, кликаешь по клавише "Блокнот" - вставляет в блокнот, кликаешь по клавише "word" - вставляет во Ворд?


Dema-X   (2004-11-27 20:06:00) [13]


> YurikGL ©   (27.11.04 19:56) [9]
> Dema-X   (27.11.04 19:35) [8]
>
> Так... удаляй эту  вордаппликейшн и пиши следующий код:

о рабит! а можно сделать так чтобы без привязки к ворду было то есть щёлкаю правой кнопкой в блокноте туда ставит щёлкаю в ворде в ворд ставит и т.п


Dema-X   (2004-11-27 20:04:00) [14]

> YurikGL ©   (27.11.04 19:25) [7]
>
> > Dema-X   (26.11.04 11:59) [4]
> > инвид метод пишет
>
>
> Во первых, на какую строчку, во вторых, а у тебя в это время
> ворд запущен? Документ какой-нибудь открыт? В буфере что-нибудь
> есть?

пишет что прога вызвала исключение EINTFCASTERROR c сообщением интерфейс нот супорт то бишь не поддерживается.что делать?


YurikGL   (2004-11-27 19:56:00) [15]

Dema-X   (27.11.04 19:35) [8]

Так... удаляй эту  вордаппликейшн и пиши следующий код:


var
app:Variant;
....
Begin

try
app:=GetActiveOleObject('Word.Application');
app.selection.paste;
finally
 App:=Unassigned;
end;

End;


Dema-X   (2004-11-27 19:35:00) [16]

так точно YurikGL!Ворд запущен в ворде новый документ в буфере строка типа 'ABCDEFG'которая прекрасно вставляется в блокнот ворд XP дельфи 7


YurikGL   (2004-11-27 19:25:00) [17]


> Dema-X   (26.11.04 11:59) [4]
> инвид метод пишет


Во первых, на какую строчку, во вторых, а у тебя в это время ворд запущен? Документ какой-нибудь открыт? В буфере что-нибудь есть?


Dema-X   (2004-11-27 14:29:00) [18]

но инвалид


TUser   (2004-11-26 12:48:00) [19]


> инвид метод пишет

Инвалид?


Dema-X   (2004-11-26 11:59:00) [20]

инвид метод пишет


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо