powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Просветите о методах взаимодействия приложений
71 сообщений из 71, показаны все 3 страниц
Просветите о методах взаимодействия приложений
    #37449306
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В плане систематизации знаний хочу узнать, какие существуют методы взаимодействия приложений (повторного использования кода) в Windows, Linux. Интересуют именно интранет-взаимодействия, а не интернет, т.е. не веб-сервисы.

Я знаю такие:
1. COM-технологии - существуют только в Windows. Приложение запускается как объект, у которого доступны свойства и методы.
2. Командная строка - запуск EXE-файла с ключами. В некоторых случаях можно управлять уже запущенным приложением через командную строку, а в некоторых интересен просто результат выполнения.
3. DLL. Использование скомпилированных функций из DLL.
4. DDE - что-то похожее на COM и уже устаревшее, поэтому, скорее всего, не актуальное.

Чего я еще не знаю?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37449329
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fixinкакие существуют методы взаимодействия приложений (повторного использования кода)

или трусы наденьте, или крестик снимите.
FixinИнтересуют именно интранет-взаимодействия, а не интернет, т.е. не веб-сервисы.
вебсервиы!= интернет, вполне себе могут крутьться на localhost.

Если речь о взаимодействии процессов - добавьте CORBA, разделяемую память, именованые и неименованые каналы
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37449352
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилFixinкакие существуют методы взаимодействия приложений (повторного использования кода)

или трусы наденьте, или крестик снимите.
FixinИнтересуют именно интранет-взаимодействия, а не интернет, т.е. не веб-сервисы.
вебсервиы!= интернет, вполне себе могут крутьться на localhost.

Если речь о взаимодействии процессов - добавьте CORBA, разделяемую память, именованые и неименованые каналы

Я потому и просил исключить веб, что для поднятие веб-сервера нужно много телодвижений сделать. А вот запустить приложение из командной строки - ЛЕГКО!

Видимо, CORBA, разделяемая память и каналы из этой же сложной оперы.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37449356
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вижу такой идеальный метод для локального компьютера - зная, где находится EXE-файл приложения, вызываю его и он мне дает в виде объекта с свойствами и методами доступ к своему функционалу. Как называется такая технология?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37449391
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinЯ вижу такой идеальный метод для локального компьютера - зная, где находится EXE-файл приложения, вызываю его и он мне дает в виде объекта с свойствами и методами доступ к своему функционалу. Как называется такая технология?

До идеала - далеко, COM подойдёт для реализации.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37449557
авторh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилFixinкакие существуют методы взаимодействия приложений (повторного использования кода)

или трусы наденьте, или крестик снимите.
FixinИнтересуют именно интранет-взаимодействия, а не интернет, т.е. не веб-сервисы.
вебсервиы!= интернет, вполне себе могут крутьться на localhost.

Если речь о взаимодействии процессов - добавьте CORBA, разделяемую память, именованые и неименованые каналы
А также dbus и dcop. На линуксах вроде dbus сейчас постепенно заменяет bonobo и dcop.

Я через D-Bus мигрировал сотни торрентов с vuze в ktorrent, добавлял в него группы и торренты в группы через python'овскую dbus либу, больших неудобств не было.

Возвращать поддерживаемые методы и свойства DBus умеет (introspection)
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37449813
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилДо идеала - далеко, COM подойдёт для реализации.
Ну COM в эту схему добавляет только поиск исполнимого кода через реестр и некий стандарт на объявление методов и свойств.
А под "далеко" вы что подразумеваете? Что стандарты будут выработаны еще не скоро?

авторhВозвращать поддерживаемые методы и свойства DBus умеет (introspection)
У меня к вам просьба. Вот смотрите.
Технология COM позволяет зарегистрировать в реестре Windows некую библиотеку, после чего можно создавать по символическому имени объект, который будет иметь свойства и методы, а их реализация будет содержаться в этой библиотеке. Функционал библиотеки - это как раз функционал приложения, таких как текстовые редакторы, браузеры и т.п.

Можете так же кратко объяснить чайнику, что такое DBUS?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37450379
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fixin...Технология COM позволяет зарегистрировать в реестре Windows...

ерунду несёте.
реестр и COM технология - две разные вещи. Рекомендую прочитать "основы COM" - есть такая популярная книга. в начале книги дано определение что такое COM - почитайте на досуге, не поленитесь. реестра там в помине нет. так что учите матч часть для начала...

или по другому...
технология на то и технология чтоб пофигу где быть реализованной.

удачи вам
(круглый)
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37450440
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolobok0Fixin...Технология COM позволяет зарегистрировать в реестре Windows...

ерунду несёте.
реестр и COM технология - две разные вещи. Рекомендую прочитать "основы COM" - есть такая популярная книга. в начале книги дано определение что такое COM - почитайте на досуге, не поленитесь. реестра там в помине нет. так что учите матч часть для начала...


Любую технологию можно объяснить в двух словах. Если я неправ в деталях, это мелочи. Главное - суть. По сути что я не так описал в COM? По крайней мере часть COM, мне знакомую я описал правильно и так, чтобы любой, кто не работал с COM мог понять, что это такое.

Был бы благодарен за подобное же объяснение в двух предложениях сути DBUS.

Мне не нужно читать подробности, я хочу понимать "в общем виде".
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37450638
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinМне не нужно читать подробности, я хочу понимать "в общем виде".
В двух словах это можно назвать "Удалённый вызов процедур", RPC
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37450816
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не ограничивайте себя, изобретайте новые методы http://www.sql.ru/forum/actualthread.aspx?tid=882269
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37450897
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилFixinМне не нужно читать подробности, я хочу понимать "в общем виде".
В двух словах это можно назвать "Удалённый вызов процедур", RPC

Из ваших двух слов я ничего не понял. Приведите, пожалуйста, содержательное описание, если это возможно.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37450940
Пётр Седов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Изопропил:
ИзопропилЕсли речь о взаимодействии процессов - добавьте CORBA, разделяемую память, именованые и неименованые каналы
+ виндовое оконное сообщение WM_COPYDATA -- очень простой способ меж-процессного взаимодействия. Работает медленнее тех же pipe-ов, но для многих задач сойдёт.

2 Fixin:

FixinЯ вижу такой идеальный метод для локального компьютера - зная, где находится EXE-файл приложения, вызываю его и он мне дает в виде объекта с свойствами и методами доступ к своему функционалу. Как называется такая технология?
Microsoft Automation. Основана на COM. Расположение .exe-файла знать не надо, вместо этого надо знать ProgId, например "Excel.Application".

Но если хочется, чтобы единственный бинарник "раздавал функциональность" всем желающим процессам на компьютере, то я бы скорее всего не стал заморачиваться с COM, а просто скомпилировал бы .dll-файл, выставляющий наружу C-шный API, и положил бы этот .dll-файл "на видное место", то есть в каталог, упомянутый в PATH (environment variable).

FixinПриведите, пожалуйста, содержательное описание, если это возможно.
Статья в Wikipedia сойдёт за содержательное описание?

2 kolobok0:
kolobok0реестр и COM технология - две разные вещи.
Использование COM-интерфейсов без реестра -- очень редкое явление. Единственный пример, который я знаю, -- это DirectX. Входящие в него API (например, Direct3D 9) сделаны как набор COM-интерфейсов, но реально DirectX не имеет отношения к COM-компонентам, даже функцию CoInitialize вызывать не надо.

2 netwind:
netwindне ограничивайте себя, изобретайте новые методы http://www.sql.ru/forum/actualthread.aspx?tid=882269
Меж-процессное взаимодействие через реестр, конечно, имеет право на жизнь (изменения, вносимые одним процессом, сразу же становятся видны остальным процессам), но я бы так делать не стал. Реестр -- он же для хранения настроек.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37450990
boltachev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Точка зрения на взаимодействие программ может быть с двух сторон:

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

Существующие программы зачастую не имеют интерфейса, даже наоборот, разработчик как будто пытается затруднить управление
с помощью эмуляции нажатия клавиш (вот, кстати, ещё технология, но она слаба, так как фокус в любой момент можно потерять)
В качестве примера такой программы: SMS-MMS-Desktop-Client-1.3.1.2-RU.exe


В реестр я бы вообще ничего не писал. Положи программу на флешку, да гоняй на любом компе, где есть интернет. А так приходится использовать удаленный рабочий стол, портирование приложений или виртуальные машины.

Так что, мне кажется, хорошо иметь .exe, рядом с ним .ini и .dll с описанием функций.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37451037
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinВидимо, CORBA, разделяемая память и каналы из этой же сложной оперы.
Fixin такой фиксин. Если он в чем то не бум-бум, то считает что это не нужные технологии
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37451386
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пётр Седов...Использование COM-интерфейсов без реестра -- очень редкое явление. Единственный пример, который я знаю, -- это DirectX.....


для тех кто в танке...
1) речь шла не о явлениях. а о технологиях.
2) заявлялось равенство между реестром и COM

что Вам не понятно?
ышо раз..
OLE, реестр и прочии надстройки над технологией COM есть чисто форточные изобретения и носит отпечаток среды где это юзается. COM можно юзать где угодно где есть понятие бинарник. COM накрывает свои описанием способ динамического взаимодействия, описывая интерфейсный примитив.

(круглый)
ЗЫ
Меня поражает не умение людей видеть плюсы и обходить минусы в той или другой найденной инфе по жизни. COM это сама по себе замечательная технология и если есть потребность(по задаче) такая гибкость - то глупо её не юзать.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37451606
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolobok0[
OLE, реестр и прочии надстройки над технологией COM есть чисто форточные изобретения и носит отпечаток среды где это юзается. COM можно юзать где угодно где есть понятие бинарник. COM накрывает свои описанием способ динамического взаимодействия, описывая интерфейсный примитив.

Мы обсуждаем больше практические вещи, чем теоретические.
Где на практике используется COM, кроме OLE? Буду благодарен вам за информацию.
Я знак равенства не ставил, я описывал известную мне реализацию COM
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37451617
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пётр Седов Статья в Wikipedia сойдёт за содержательное описание?

Я просил такое описание, которое вкратче излагает суть или ваш личный опыт. Я не поленился и описал OLE-технологию в винде понятным языком, всего 2 предложения. Вы можете кратно, в двух предложениях, лаконично аннотировать статью из Вики? Я почитал и ничего не понял.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37451620
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для Windows - должен быть DCOM. С CORBA - не знаком но те кто имели дело говорят - шибко сложная для начинания. Советуют выбрать любую другую альтернативу. Для .Net соответственно есть боле удобный Remouting.

Для *nix - модной фрондой должен быть D-Bus (хотя тоже не знаком).
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37451648
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То бишь, резюмируя, если разработчик хочет обеспечить доступ к функциональности своего приложения, самый простой способ - он должен сделать DLL, которую можно вызывать. Но тут возникает вопрос - а как управлять уже запущенным приложением.
Как разработчик должен в этой DLL описать обращение к уще запущенному приложению, если он хочет обеспечить такую возможность?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37451652
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Читай про COM-серверы.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37451672
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЧитай про COM-серверы.
Ответ ни о чем. Вы же понимаете, что я не знаю, с чего начать читать и что именно читать.
Можно своими словами?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37451742
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinmaytonЧитай про COM-серверы.
Ответ ни о чем. Вы же понимаете, что я не знаю, с чего начать читать и что именно читать.
Можно своими словами?
Замкнутый круг получается. Ты не знаешь с чего начать. И хочешь
сразу всё.

Ну вобщем такая телега: есть низкоуровневые механизмы
IPC (InterProcess communication). Это shared memory, и объекты
мультизадачности (всякие там мьютексы, атомарные счётчики и прочее).
Отдельной категорией стоят Pipes. Каналы между процессами.
Можно еще почитать про сокеты, и memory-mapped files хотя и не обязательно.
Начни читать с этого если хочешь. Если не хочешь - читай сразу
по архитектуре COM серверов. Дальше советы давать безсмысленно
т.к. твоё задание нам неведомо и соотв. непонятно что
добавлять к концепциям.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37451748
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quote Fixin Я не поленился и описал OLE-технологию в винде понятным языком, всего 2 предложения. [/quote]
Вам это не удалось(ни понять технологию, ни описать)
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37454525
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилВам это не удалось(ни понять технологию, ни описать)
Ваше имхо против моего. Я считаю, что понял и описал адекватно, по крайней мере то, что щупал на практике. МОжете указать на ошибки, если хотите чего то доказать.

Возник практический вопрос.
Я хочу заказать программно управляемый браузер http://www.sql.ru/forum/actualthread.aspx?tid=661125&pg=5

Хочу управлять им из консоли.
Т.е. в памяти будет сидеть процесс PCB.EXE, а когда я буду запускать PCB.EXE с параметрами, этот второй процесс будет подключаться к первому и возвращать данные о состоянии или управлять первым процессом.

Вопрос - как по-другому можно сделать управление.
Из всех механизмов интеграции в 1С есть только COM и командная строка.

Можно создать еще HTTPRequest, если приложение будет способно отвечать на запросы на заданный порт. Но браузер будет портабельным, т.е. никаких изменений в системе, пока не работает, делать не будет.

Итак, какой самый простой, быстрый и незатратный способ взаимодействия можно изобразить в данном случае? Чтобы добавить конкретики.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37455933
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinВопрос - как по-другому можно сделать управление.
Из всех механизмов интеграции в 1С есть только COM и командная строка.
С этого и надо было начинать. Выбери КОНКРЕТНЫЙ браузер и шурши инфу
как им управлять. Может быть там и СОМ не нужен а есть просто протокол
типа "открыть-браузер-с-моей-ссылкой" или открыть anchor e.t.c.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37456180
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonС этого и надо было начинать. Выбери КОНКРЕТНЫЙ браузер и шурши инфу
как им управлять. Может быть там и СОМ не нужен а есть просто протокол
типа "открыть-браузер-с-моей-ссылкой" или открыть anchor e.t.c.

Это уже пройденный этап. Программно управляемый - только IE, он не катит.
Поэтому я хочу, чтобы мне написали свой.
Осталось только выбрать метод управления - через командную строку или через порты. Как посоветуете?
По идее, если слать пакеты через порт, то это умеет делать объект HTTPRequest или нет?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37457831
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinОсталось только выбрать метод управления - через командную строку или через порты.
"через порты".
XML-RPC например.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37461541
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinОсталось только выбрать метод управления - через командную строку или через порты. Как посоветуете?
По идее, если слать пакеты через порт, то это умеет делать объект HTTPRequest или нет?Фигачь через пайпы, порты нынче не на каждой мойшине дадут открыть.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37462412
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmoFixinОсталось только выбрать метод управления - через командную строку или через порты. Как посоветуете?
По идее, если слать пакеты через порт, то это умеет делать объект HTTPRequest или нет?Фигачь через пайпы, порты нынче не на каждой мойшине дадут открыть.

А как через пайпы? В смысле есть ли какой-то COM-объект, умеющий работать через PIPE? С HTTP то я смогу получить данные через HTTPRequest

Может быть просто HTTP запрос на localhost делать? Или для этого тоже надо порты открывать?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37467376
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пайп - это стрим, как любой файл.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37467611
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmoпайп - это стрим, как любой файл.
гм... интересная тема...
а в винде есть пайпы, размещаемые в памяти, которые можно читать как обычные файлы?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37467692
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinmaXmoпайп - это стрим, как любой файл.
гм... интересная тема...
а в винде есть пайпы, размещаемые в памяти, которые можно читать как обычные файлы?
Нет. Pipe в винде это другая сущность. Не такая как в Unix.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37468368
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
FixinmaXmoпайп - это стрим, как любой файл.
гм... интересная тема...
а в винде есть пайпы, размещаемые в памяти, которые можно читать как обычные файлы? да, при чем с помощью стандартных файловых функций (createfile и так далее).
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37468369
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
можно даже настройки безопасности использовать
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37468548
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eNose да, при чем с помощью стандартных файловых функций (createfile и так далее).
Ну расскажите как.
Допустим, одно приложение создает пайп, а другое из него читает. Но пайп в памяти, а не в файлах. И в винде.
Как?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37468580
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
FixineNose да, при чем с помощью стандартных файловых функций (createfile и так далее).
Ну расскажите как.
Допустим, одно приложение создает пайп, а другое из него читает. Но пайп в памяти, а не в файлах. И в винде.
Как? http://hackins.narod.ru/data/vzlom/1_7.html
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37468889
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eNose http://hackins.narod.ru/data/vzlom/1_7.html
А говорите, можно открыть стандартными файловыми операциями... А ведь это не так, насколько я понял.

Было бы удобно, если бы я мог открыть файл "pipe:sdkfsfsfsdfsdfsfdsfdsf", записать в него, а другой процесс бы считал из него. Причем типовыми файловыми операциями, но файл бы хранился в памяти, а не на диске
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37468907
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinБыло бы удобно, если бы я мог открыть файл "pipe:sdkfsfsfsdfsdfsfdsfdsf", записать в него, а другой процесс бы считал из него. Причем типовыми файловыми операциями, но файл бы хранился в памяти, а не на диске
Это архитектура брадт. Если ты кодер под Windows то используй те механизмы,
API которых описан в MSDN.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469293
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonFixinБыло бы удобно, если бы я мог открыть файл "pipe:sdkfsfsfsdfsdfsfdsfdsf", записать в него, а другой процесс бы считал из него. Причем типовыми файловыми операциями, но файл бы хранился в памяти, а не на диске
Это архитектура брадт. Если ты кодер под Windows то используй те механизмы,
API которых описан в MSDN.
У меня нет доступа к API, я думал с PIPE можно работать стандартными файловыми операциями. Вы меня разочаровываете.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469329
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinБыло бы удобно, если бы я мог открыть файл "pipe:sdkfsfsfsdfsdfsfdsfdsf", записать в него, а другой процесс бы считал из него. Причем типовыми файловыми операциями, но файл бы хранился в памяти, а не на дискеСудя по докам, можно открыть клиентский конец пайпа. Пиши туда, а сервер пусть читает. Пайпы хранятся только в памяти.
http://msdn.microsoft.com/en-us/library/windows/desktop/aa365592%28v=vs.85%29.aspx
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469355
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinУ меня нет доступа к APIА что так?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469376
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmoFixinУ меня нет доступа к APIА что так?
В 1С я могу создавать только COM-объекты или запускать приложения. Вот так.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469476
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinmaXmoпропущено...
А что так?
В 1С я могу создавать только COM-объекты или запускать приложения. Вот так.
Создай приложение которое работает с pipes и запусти.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469506
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonСоздай приложение которое работает с pipes и запусти.
Масло масляное, тебе не кажется.
У меня есть программно управляемый браузер, думаю, через что им управлять из 1с.
Если через командную строку, то зачем мне посредник - я и так могу? Я думал можно управлять более быстрым способом, а ты меня опять через командную строку ведешь
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469712
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinВ 1С я могу создавать только COM-объекты или запускать приложения. Вот так.Ну а что тебе тогда ещё надо? Фигачь через ком. Если 1С тебе все руки открутил, Билл Гейтс тебе тут не поможет.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469742
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinВ 1С я могу создавать только COM-объекты
Вот и напиши свою COM-компоненту
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469777
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NafВот и напиши свою COM-компоненту

Это из пушки да по воробья, не кажется? Тогда уж через Command Line.
БОльше идей по взаимодействию приложений нет?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469782
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maXmoНу а что тебе тогда ещё надо? Фигачь через ком. Если 1С тебе все руки открутил, Билл Гейтс тебе тут не поможет.
В винде есть типовые COM-объекты для работы с PIPE? Вот с HTTPRequest есть, а с PIPE?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469948
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinNafВот и напиши свою COM-компоненту

Это из пушки да по воробья, не кажется?
нет, не кажется.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469952
Фотография k0rvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Например с помощью файлов, как это сделано в Plan 9 и Inferno
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469967
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinВ винде есть типовые COM-объекты для работы с PIPE? Вот с HTTPRequest есть, а с PIPE?Нет.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469969
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinВ винде есть типовые COM-объекты для работы с PIPE? Вот с HTTPRequest есть, а с PIPE?Я имел в виду, приложение, с которым ты хочешь общаться, предоставляет ком-интерфейс, через который ты с ним и общаешься. Тебе же всё напишут? Вот и пусть пишут.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37469996
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можешь конечно через HTTPRequest попробовать. Это последний писк с кроссплатформенных уях. Ну придётся написать маленький http-сервер, лол.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37470068
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какой капризный однако автор.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37470326
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
FixineNose http://hackins.narod.ru/data/vzlom/1_7.html
А говорите, можно открыть стандартными файловыми операциями... А ведь это не так, насколько я понял.

Было бы удобно, если бы я мог открыть файл "pipe:sdkfsfsfsdfsdfsfdsfdsf", записать в него, а другой процесс бы считал из него. Причем типовыми файловыми операциями, но файл бы хранился в памяти, а не на диске читаем вместе:

"Далее производится подключение к каналу \\computer_name\pipe\pipe_name посредством вызова функции "Create File".
...
Клиентский процесс может отключиться от канала в любой момент с помощью функции "CloseHandle".
...
После установления виртуального соединение серверный процесс и клиентский процесс могут обмениваться информацией при помощи пар функций "ReadFile" и "WriteFile". Если один участник информационного обмена записывает данные в канал при помощи функции "WriteFile", то другой участник может прочитать, используя функцию "ReadFile"."


То есть самые что ни есть СТАНДАРТНЫЕ файловые операции.




FixinУ меня нет доступа к API, я думал с PIPE можно работать стандартными файловыми операциями. не понял. если нет доступа к API, то какими "стандартными" файловыми операциями ты собираешься пользоваться? API - это и есть стандарт.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37470603
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eNose"Далее производится подключение к каналу \\computer_name\pipe\pipe_name посредством вызова функции "Create File".


Гладко было на бумаге, да только выдается File not found:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
    
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set file = fso.OpenTextFile("\\osipov\pipe\pipe_nametest.txt",  2 , True)
    file.Write ("Hello, World!")
    file.WriteBlankLines ( 2 )
    file.WriteLine ("Hello")
    file.Close
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37470697
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поверхностно, не вникая в детали, что-то с файловым путём не то.

Посмотри пример каналов в 32-разрядной программы на Visual Basic (сорри за каламбур но так было озаглавлено.)
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37470736
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fixin,

а канал то создан?
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37470752
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
maytonПоверхностно, не вникая в детали, что-то с файловым путём не то.

Посмотри пример каналов в 32-разрядной программы на Visual Basic (сорри за каламбур но так было озаглавлено.) оттуда:

авторСуществуют шесть шагов для создания именованных каналов сервера.

Создайте маркер безопасности для канала для доступа к нему (чтобы сделать доступными для любого процесса именованных каналов, создавая маркер безопасности с на уровне пользователей управления доступом список (DACL), содержит нулевые элементы).
Создание именованного канала.
Вызов ConnectNamedPipe для блокирования до подключения клиента.
Вызов ReadFile и WriteFile для связи через канал.
После завершения процесса, вызов DisconnectNamedPipe через канал.
Либо CloseHandle по именованному каналу или перейдите к шагу 4.

Существуют три шага для использования именованных каналов клиентом именованных каналов.

Вызовите CreateFile , чтобы получить дескриптор для именованного канала.
Вызов ReadFile и WriteFile для связи через канал.
Вызов CloseHandle filehandle , созданные в CreateFile.

что именно не то с файловым путём? :)
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37470757
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
Fixin
Код: plaintext
fso.OpenTextFile
канал бинарный
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37470778
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eNoseчто именно не то с файловым путём? :)
Я просто предположил что имя хоста надо заменить на точку для начала.
Это бы отбросило процент проблем ресолвинга имени.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37470783
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

я полагаю - канал отсутсвует в натуре
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37470960
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinГладко было на бумаге, да только выдается File not foundэто только клиент; без сервера соответственно и коннектиться не к чему.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37471086
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил, а как я на VSB сделаю вызов InitializeSecurityDescriptor ???
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37471162
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я-же пример привёл. Или ты совсем не читал.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37471653
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FixinИзопропил, а как я на VSB сделаю вызов InitializeSecurityDescriptor ???
сервер на VBS имитируется?

Если клиент 1С - разумнее всего с сервером взаимодействовать через COM и не трахать себе и окружающим мозг.

COM server можно писать и на vbscript - http://www.sql.ru/forum/actualthread.aspx?tid=11397823


насчёт "заказного" управляемого броузера - включить практически любой броузер в своё приложение (которым Вы и будете управлять) - задача несложная
Модератор:
done
новая ссылка неправильная
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37471743
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
правильная ссылка - http://forum.script-coding.com/viewtopic.php?id=1037
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37471988
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну я уже писал насчет написания COM-серверов
Это усложнит проект.
Если через стандартные файловые функции нельзя, буду через командную строку.
21 век, а в винде нет стандартного обмена между приложениями - приплыли.
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37472094
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
FixinНу я уже писал насчет написания COM-серверов
Это усложнит проект.
Если через стандартные файловые функции нельзя, буду через командную строку.
21 век, а в винде нет стандартного обмена между приложениями - приплыли. а по-моему ты просто троллишь
...
Рейтинг: 0 / 0
Просветите о методах взаимодействия приложений
    #37472095
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
FixinЕсли через стандартные файловые функции нельзя тебе уже показали, что можно.
именно через стандартные файловые функции.

за сим топик закрываю.
...
Рейтинг: 0 / 0
71 сообщений из 71, показаны все 3 страниц
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Просветите о методах взаимодействия приложений
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]