teadrinker
Вы по поводу PIPE ?
1- как и в моём примере с проводником. Прописывается таймер по которому происходит опрос скрипта с выставлением ему Аргументов ... В моём тут примере аргумент был WRITE или READ.
2- В примере "тут", в файлах 1.vbs и 2.vbs если ВЫ внимательно присмотритесь, при разных аргументах (write/read) , создаётся PIPE канал различный, относительно аргументоа. Что я имею ввиду? Например файл 1.vbs .При аргументе READ создаётся канал с 2.vbs с поcылкой ему аргумента WRITE. А при аргументе WRITE создаётся просто канал PIPE без всего, и даже без указания получателя. Т.е. просто пустой канал, в который будет посылаться месяга Wscript.echo. А получатель этой месяги будет тот кто отправил ему этот аргумент WRITE. Вот присмотритесь внимательно как ЭТО организовано. Тогда вы поймёте как это работает.
Я так понял на этом примере, что
создают между собой один и тот же канал связи. При этом команда
полностью игнорируется , а общение происходит ТОЛЬКО по внутренним функциям самой
.
В этом примере функция
ловит в канале то что отправила туда функция Wscript.echo. Заметьте, не
а именно Wscript.echo в пустоту, в пустой канал. Но всё равно тот кто послал аргумент WRITE, ловит в этой пустоте с помощью консольной
, всё что выдала Wscript.echo второго скрипта.
...
Ну короче. схема такая. в обоих скриптах стоят таймеры и по ним и по ответам, переговариваются между собой эти скрипты. Аргументов можно наслать в линию много. Первый аргумент это типа , читать/отвечать, второй какие параметры или какие функции задействовать т.д.. А т.к. каналы у скриптов единоличные (как я понял именной канал PIPE у
всего один ) , то ловить от туда могут все, не зависимо от скрипта. Главное что бы эти левые скрипты создали/вошли_туда с помощью
.
...
Но заниматься этой фигнёй мне в лом - "долбёжки много". Да и рядом есть "проводник".
Но "проводник", тоже оказался не чудо-юдо. А обычный пересыльщик текстовых посланий. Если вы будите через него слать объекты, то и ловите этим же языковым скриптом этот объект. Этот объект не будет распознаваться другим скриптовым языком. Что я и обнаружил при связывании VBS с VB.NET через него.
Я даже для верности изготовил свою DLL в VB.NET с регистрацией её, которая по прототипу Dictionary могла списки в себе организовывать, да не простые а с объектмами, т.е. всеядная такая- глотала всё. VBS со скоростью света её хавала и посылал туда объект. И если ловит его второй VBS, то там нет проблем. То этот объект (котороый был впихнут в dictionary первым VBS) появлялся и во втором VBS. А вот эта же библиотека - родная для VB.NET , не смогла его правильно послать в такой же VB.NET. Т.е. у разных скриптов разное представление типов данных. Один тип остался стандартен , это текст, что я и использовал с проводником. Т.е.
вывод был таков.
ВЫВОД
Если для разных скриптовых языков нет стандарта по типу данных, кроме как текст, то нафига городить огороды, когда есть готовый "почтовый ящик", который постоянно в работе без лишней регистрации его в вине?