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

Вниз

передать команду другому приложению   Найти похожие ветки 

 
alexus   (2006-02-02 11:13) [0]

в листбоксе есть список запкщенных в данный момент программ.
как передать подсвеченной в листбоксе программе команду?
при этом..эээ...как бы это сказать.. съимитировать команду программы file->import


 
Fay ©   (2006-02-02 11:14) [1]

Какую команду? "Фас!", что-ли?


 
alexus   (2006-02-02 11:16) [2]

ты читать умеешь?


 
alexus   (2006-02-02 11:17) [3]

actionMan.executeAction 0 "40010"
фот это


 
Digitman ©   (2006-02-02 11:29) [4]

Листбокс-то при чем тут ?

Мало ли где можно хранить/отображать строки некоего текста ..


 
Fay ©   (2006-02-02 11:29) [5]

фот это
http://www.yandex.ru/yandsearch?rpt=rad&text=%F1%EF%EE%F1%EE%E1%FB+%EC%E5%E6%EF%F0%EE%F6%E5%F1%F1%ED%EE%E3%EE+%E2%E7%E0% E8%EC%EE%E4%E5%E9%F1%F2%E2%E8%FF


 
alexus   (2006-02-02 11:32) [6]

и что я должен пасть ниц перед такой крутизной?????
вроде как-то это sendmessage проделывалось...


 
Fay ©   (2006-02-02 11:35) [7]

> вроде как-то это sendmessage проделывалось...
Всё верно, только кто-то должен ловить эти сообщения.


 
alexus   (2006-02-02 11:37) [8]

ну а по имеющейся ссылке на окно разве нельзя?


 
Fay ©   (2006-02-02 11:40) [9]

А что из себя представляет эта ссылка?


 
alexus   (2006-02-02 11:47) [10]

procedure TForm1.Button2Click(Sender: TObject);
VAR  Wnd : hWnd;
begin
Wnd := GetWindow(Handle, gw_HWndFirst);
SendMessage(Wnd,WM_QUIT, 0,0);
end;

ну как бы вот это.ээ..для начала.  в Дельфи я тлько первые шаги делаю собсно....


 
Fay ©   (2006-02-02 11:49) [11]

Это ответ на [9] ? Странно


 
Digitman ©   (2006-02-02 11:49) [12]


> alexus   (02.02.06 11:47) [10]


И какое отношение WM_QUIT имеет к программному вызову нечто упомянутого как File -> Import ..


 
alexus   (2006-02-02 11:52) [13]

я ж грю - пример
если бы я знал как это сделать правильно наверное ябы тут не терся, логично?


 
Fay ©   (2006-02-02 11:56) [14]

2 alexus   (02.02.06 11:52) [13]
Логично отвечать на наводящие вопросы. Это ведь тебе надо, не нам.


 
alexus   (2006-02-02 11:57) [15]

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


 
Digitman ©   (2006-02-02 12:01) [16]


> я по 3д работаю


3д - эт чего такое ? Не сподобишься ли пояснить ?


 
alexus   (2006-02-02 12:05) [17]

3д - трехмерка.
Удобнее проектировать в 3д-пакетах чем на бумаге.

А Дельфи мне просто нравится. Правда пока ничем выдающимся не могу похвастать


 
Digitman ©   (2006-02-02 12:16) [18]


> 3д - трехмерка


Это и ежу понятно)

Какой конкретно программный пакет ?

3DMax ?

Если он , то выкрутасы с сабжем вовсе не нужны - пакет реализован как сервер автоматизации.


 
alexus   (2006-02-02 12:19) [19]

да 3d max.

это ты про com/dcom?
я там в хелпе по максу порылся, но видимо не  там))


 
Digitman ©   (2006-02-02 12:23) [20]


> alexus   (02.02.06 12:19) [19]


> ты про com/dcom?


Ну типа того - OLE/COM.


> в хелпе по максу порылся, но видимо не  там


Хэлп хелпу - рознь ..

Смотря в каком рылся ...


 
alexus   (2006-02-02 12:28) [21]

в maxscript
там конечно есть раздел ole automation.
но ээээ.... я так понял что там в основном то как из макса данные передавать. вот в тот же "Эксель" например


 
Digitman ©   (2006-02-02 12:37) [22]


> я так понял что там в основном то как из макса данные передавать.
>  вот в тот же "Эксель" например


Может быть, ты не правильно понял ?
Или не дочитал, недо вник ?

Что, там нет ни единого интерфейса с методом а-ля Open() ?
Сомневаюсь я что-то ..

Если не доверяешь справке, импортируй и просмотри библ-ку типов.


 
alexus   (2006-02-02 12:44) [23]

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


 
alexus   (2006-02-02 12:46) [24]

может съэмулировать "драг и дроп" из базы в 3д макс?


 
Digitman ©   (2006-02-02 12:56) [25]


> нужно заставить его выполнить эту операцию по команде от
> другого приложения


На то, как ни странно, серверы автоматизации и придуманы ...


> может съэмулировать "драг и дроп" из базы в 3д макс?


Ну если есть возможность вызвать ту самую операцию по OLE/COM, то зачем тут D&D ?

Сначала однозначно убедись, что 3DMax как олей/СОМ-сервер не предоставляет такой интерфейсной функциональности ..


 
alexus   (2006-02-02 13:00) [26]

так.
мне значицца длл`ку надо посмотреть.
чем мне ее это самое....того..этого...?


 
Digitman ©   (2006-02-02 13:05) [27]


> чем мне ее это самое....того..этого...?


Да чем угодно ... Средствами Делфи  - тем же Project -> Import Type Library ..

Еще лучше будет средствами OLEVIEW.EXE из состава MS VisualStudio.

"Да мало ли в Бразилии Педро !" (С) ".. , я ваша тётя !"


 
alexus   (2006-02-02 13:13) [28]

эх....че-то нихрена не получается


 
Digitman ©   (2006-02-02 13:15) [29]

Значит либо не то делаешь либо чего-то не понимаешь.


 
alexus   (2006-02-02 13:18) [30]

скорее всего и то и другое
дллок много и что за что отвечает не всегда ясно.
и кроме того ест библиотеки с расширением dli, dle, dlr и тд.
нам по идее нужна dli именно она за импорт отвечает но дельфи ее не распознает


 
Digitman ©   (2006-02-02 13:25) [31]


> дллок много и что за что отвечает не всегда ясно


А ехе смотрел ?


> нам по идее нужна dli именно она за импорт отвечает но дельфи
> ее не распознает


Импорт чего куда ? Определись ..

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

Выяснинием этого и займись для начала .. если чтение док-ции не привело к просветлению ..


 
alexus   (2006-02-02 13:29) [32]

> А ехе смотрел ?
смотрел
в дельфи  не импортится выдает ошибку при открытии библиотеки

> Импорт чего куда ? Определись ..

3dsimp.dli - этот файл отвечает за импорт


 
Digitman ©   (2006-02-02 13:34) [33]


> 3dsimp.dli - этот файл отвечает за импорт
> <Цитата>


Импорт ЧЕГО ? КУДА ?

Что за файл ?
Каков его формат ?
Где и как. согласно док-ции, он используется ?

Мне что, самому это выяснять ? Или таки сам наконец-то сподобишься ?


 
alexus   (2006-02-02 13:41) [34]

я говорю. библиотека 3dsimp.dli отвечает за импорт файлов 3ds в 3dsmax.
никакой документации по этому вопросу нет ибо считается что не дело голимым юзерам такие вестчи знать.
dli  это типа dll но с измененным расширением. это юзает 3dsmax
не думай что я все н атебя свалил я сам думаю..только безуспешно.
в общем не по зубам мн етаокй орешек похоже..


 
Digitman ©   (2006-02-02 13:44) [35]

Идешь сюда

HKEY_CLASSES_ROOT\TypeLib

Находишь здесь пути ко ВСЕМ файлам, которые хоть каким-либо образом относятся к 3dsmax-пакету.

Это и есть отправная точка для просмотра имеющихся библ-к типов.


 
alexus   (2006-02-02 14:17) [36]

dll нашел.
щас позырю что там у нас


 
Digitman ©   (2006-02-02 14:20) [37]


> позырю


"зырь".

и делай выводы.


 
alexus   (2006-02-02 14:30) [38]

имеем...
IDROPLib_TLB.pas и там в интрефейсе uses OleCtrls, OleServer
а в MAXCOMPONENTSLib_TLB.pas - OleServer
"правильной дорогой иду, товарищ?"


 
Digitman ©   (2006-02-02 14:51) [39]

Мало ли чего там в uses..

То что там фигурируют OleCtrls, OleServer - вполне нормально для ЛЮБОГО контроллера автоматизации, каковым в потенции может стать и твое приложение.

Вопрос в содержимом интерфейсного раздела модуля  - какие интерфейсы с какими методами предоставляет некая "приблуда" от 3DMax с именем IDROPLib ..
Таковая. кстати,  - единственно найденная тобой как зарегистрированная библ-ка типов в составе пакета ?


 
Digitman ©   (2006-02-02 14:55) [40]

На твоем месте я бы бросил скорбную мольбу в форум, мол, ткните меня носом, уважаемые продвинутые пользователи-программисты 3ДМакса как олей/СОМ-сервера, где, как, каким образом и в каком порядке (пошагово) мне получить доступ к методам/св-вам/событиям оного объекта при наличии у меня того-то и того-то ...



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

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

Наверх




Память: 0.56 MB
Время: 0.044 c
15-1138621065
Silica
2006-01-30 14:37
2006.02.19
Кнут


15-1138553518
Gero
2006-01-29 19:51
2006.02.19
Samsung SH-B022 пишущий Blu-ray драйв – выйдет в уже апреле!


2-1138555979
з. танька
2006-01-29 20:32
2006.02.19
Учет траффика


15-1138449645
Хинт
2006-01-28 15:00
2006.02.19
Дурацкий вопрос


2-1138351597
СержК
2006-01-27 11:46
2006.02.19
Как грамотно остановить, убить поток