Здравствуйте, vvaizh, Вы писали:
PE>>Встроенной естесвенно нет. PE>>Но есть примочки, которые дают возможность на жаве рубаться с COM и из COM с Жавой.
PE>>У нас так и шпарит. Без этого нам пришлось бы переписать весь жава код. PE>>А так просто подрубили его и не потеем.
V>Дык вот ИМХО эта самая штука (COM для Java) работает через jni..
Нет. Просто согласованы интерфейсы.
Jni — это нужно для написания отдельных методов-активаторов.
Жава создает объект, передает его во вне, там его подхватывает кто угодно и использует безо всяких Jni.
Нужен только способ создания класса, который находится в жавовском модуле — вот этот кусок чз Jni.
Для того, чтобы из жавы достучаться к COM, нужно вызвать апишную функцию — для этого тоже Jni.
Потом все рулит без Jni — напрямую.
V>который есть как раз прямой интерфейс во всякие бинарные компоненты типа dll из java V>дык вот опять же во многих случаях эффективнее взаимодействовать Java<->С++ V>Ни через какой ни через COM, а через JNI..
Я не взаимодействую с ДЛЛ. Я взаимодействую с методами объектов, которые созданы в жава модуле.
V>Дык вот ИМХО эта самая штука (COM для Java) работает через jni.. V>который есть как раз прямой интерфейс во всякие бинарные компоненты типа dll из java V>дык вот опять же во многих случаях эффективнее взаимодействовать Java<->С++ V>Ни через какой ни через COM, а через JNI..
Если ты помнишь, ДЛЛ выставляют такой метод — DllGetClassObject.
Вот его нужно экспортировать из жавы, что бы COM подхватил.
А что бы жава подхватывала COM, ей надо подсунуть CoCreateInstance, CoGetObject и тд.
Только для этого нужен JNI. После того, как внешний клиент получил указатель на объект жавы, можно делать все, что угодно.
Здравствуйте, Plutonia Experiment, Вы писали:
PE>Здравствуйте, vvaizh, Вы писали:
V>>Вот, ещё один расчёты.. V>>http://zdnet.ru/?ID=302054
PE>А ты смотрел результаты тестирования TPC ?
Здравствуйте, vvaizh, Вы писали:
V>А ты это смотрел: V>http://zdnet.ru/?ID=297184
V>Твой TPC скомппрометирован, так как явдяется закрытым тестом..
??? И где там сказано, что TPC закрытый?
Лезь на сайт, качай исходники и гоняй у себя эти тесты...
В чем проблема и в следствии чего собственно tpc скомпрометирован? Чем?
R_M>>просто возникает вопрос: какого #$#@%%*#$@ раньше этими утилитами ОС не комплектовали, можно подумать, что консольный таск менеджер — новейшее достижение в области информационных технологий.
M>Возникает ответ: а какого #$#@%%*#$@ ты раньше про это в Микрософт не написал директиву? Ты ж у них главный архитектор, как только они не догадались с тобой посоветоваться
R_M>Вы немного ошиблись, я не главный архитектор в M$, я всего лишь скромный президент мира.
Ну, тогда нечего пытаться управлять стратегией выпуска продуктов Микрософта.
R_M>>tlist тоже что-то не обнаружился. M>Он не входит в Windows, как я уже говорил. Просто удобная вещь, советую поискать на просторах.
R_M>Да уменя и так такие утилиты есть (pslist), да и сам написать смогу при необходимости, другое дело что подобные вещи желательно класть в стандартную поставку ОС.
Тебе желательно, мне желательно, а Леониду Степанычу из города Рязань не желательно. Леонид Степаныч ратует за большее разнообразие пасьянсов и карточных игр. На всех не угодишь.
R_M>>> А если _деньги_ будет получать кто-то другой, то M$ перекупит и будет продавать сам.
M>>Так это ж нормально. Все так поступают. Капитализм, однако.
R_M>> Суть в том, что не всем нравится такая политика M$.
M>Суть в том, что она никому не должна нравится. Мне тоже не нравится, что в магазине с меня деньги берут.
R_M>Если рассматривать M$ как магазин, то выясниться, что они, как минимум, принуждают покупать товары внагрузку.
А в магазине ты тоже требуешь изюм из булочек повыколупывать?
MAG>А так. Сижу я PowerUser под виндой. Ставлю софтину SoftickPPP. Запускаю. Рушится винда. Пальм, по юсб соединенный, выдает fatal error. В юниксах максимум — свалился бы мой процесс.
VD>Ну, это чушь. Если софтина не модифицирует ядро и не ставит драверы (короче не выходит в нулевое кольцо защиты). То завалить виндовс она не всилах.
Ну почему же не в силах. Чтоб посеять панику иногда не обязательно на самолётах в дома врезаться. Бывает, хватает скромного стирального порошка в ковертах.
Самый тупой способ — постоянно запускать плодить потоки, процессы, в каждом грузить бесконечный цикл и приоритеты накручивать. Система встанет.
Ещё есть прикольный способ, если есть достаточные права — убить нулевой процесс. Это, правда, сложно — нужно брать Ownership и т.д.
M>Не сомневаюсь. Но грамотно настроить и администрировать домашний компьютер некому. Вообще, в сегменте SOHO грамотно администрировать слишком дорого.
R_M>Дома компьютер _обычно_ не атакуется зловредными пользователями
R_M>>А зачем нужна "революция" M>Не знаю. У меня всё конвертится с полпинка.
R_M>На каком API ?
Какая разница? System.Text.Encoding к примеру.
R_M>> под линукс все умудряется хорошо работать используя api незнамо каких годов, под винды постоянно придумывают новое api которое не особенно лучше старого. M>Ты сильно не похож на спеца в WinAPI (конвертилку вон не смог сделать). Я тебе не верю.
R_M>Ковертилку можно сделать на MLang, а это уже не Win32 Api, согласно MSDN это Internet Development SDK.
Ну да, можно и на MLang, наверное. Это плохо? Это "постоянно придумывают"?
R_M>> Похоже на большие ошибки в проектировании. Кроме того половина "нового" не api не является, стандартом, приходится завязываться на посторонный софт, типа браузера, офиса и т.п.
M>Что за бодяга?
<skip> R_M>Сейчас уже почти не актуально, но в любой момент M$ вспомнит о том, что нужно сделать новое API, и оно окажется доступным при установке новой версии браузера или офиса.
Ну да, добавляют новые возможности. Это теперь плохо?
Можешь не пользоваться. Таблицу перекодировки самому сделать — две минуты работы.
R_M>>>>Проблема в том, что у меня есть и компилятор, и умение им пользоваться, а у других этого нет, а стандартными средствами в Windows не многое удается сделать. M>>>Стандартными средствами в Линукс многое не удаётся сделать. А в Windows — как раз наоборот. R_M>>>Хотя бы один нормальный пример, а то демагогия получается. M>>Именно на это я и намекаю. Ты говоришь "стандартными средствами в Windows не многое удаётся сделать" — это такая же демагогия. R_M>>Я приводил примеры. M>Ну да, ты привёл пример перекодировщика. Его можно сделать стандартными средствами. Из всего этого "многого" не осталось ничего.
R_M>Как это ничего, а подключение iso-имиджа в качестве файловой системы, под Windows пусть это будет iso-имидж, поключенный в качестве отдельного диска. Под Linux делаается примерно так: R_M>mount -t iso9660 /mnt/cdimage /root/image.iso -r -o loop
О.К. Теперь моя очередь. В Windows стандартными средствами можно отправлять сообщения, Instant Messages, типа ICQ.
R_M>>>>При чем тут популярность ? M>>Так почему ты не посмотрел пункт "статистика"? R_M>>Не понял, про какую статистику идет речь. M>Пункт "статистика" в веб-интерфейсе RSDN. Ты придуриваешься? R_M>Там много разных статистик, что смотреть ?
Да.
R_M>>>>M$ продвигает не их, а свой Windows (какой-нибудь) Server в качестве серверной платформы. M>>>Наконец-то! R_M>>>А сразу нельзя что-ли было сообразить. M>>Ну так взял бы и сообразил. А то ты пишешь, что Микрософт продвигает чужие веб-сервера. R_M>>Я не писал про сервера, у них есть IIS, они провигают его. M>Ты писал про веб-сервера. И про SQL-сервера тоже писал.
R_M>Я не писал, что M$ их продвигает.
Значит это был кто-то другой под твоим ником.
M>Интерестно, Макинтош мысли на растоянии читает? Как можно настроить веб-сервис не копаясь в настройках?
R_M>Не читает, но возни с ними в разы меньше
Наверное, ты не видел, как в Windows настраивается Web-сервер. Я угадал?
R_M>>Не знаю есть ли там Win16, может в Wine и добавили. Но это же другая операционка, речь то шла не про поддержку софта от другой операционки. M>FAT32 тоже из другой операционки.
R_M>Файловых систем там разных много, проблемы есть только с записью на ntfs и udf.
Ты о чём?
M>> Вы поскользнулись на банановой корке — подавайте в суд на Микрософт. Ваша жена вам изменяет — подавайте в суд на Микрософт. R_M>>Если жена изменяет с Windows, то наверное можно подать. R_M>>А вот по поводу несовместимоти ПО были реальные суды.
M>Ну да, понятно. M>— Дядя Федя ворует лампочки в подъезде. M>— Это как? Я не видел. M>— Я тоже не видел, но почему у него такое неприятное лицо?!
R_M>Увы, но у M$ тоже очень неприятное лицо, они уже давно подпортили себе имидж. И началось это уже давно, впрочем как и первые суды.
И отсюда вывод? Микрософт ворует лампочки в подъезде?
MAG>Я уже писал, что не стоит очинивать жерновом карандаш и не стоит брать 30 велосипедов, чтобы перевезти рояль. MAG>Если нам требуется примитивный сервис "соединение->вопрос->ответ->отсоединение", то больше ничего, кроме CGI и не нужно.
PE>OLE в чистом виде да еще на Си — это не часто увидишь.
V>Если я не ошибаюсь, выше вы писали, что работаете с OLE без всяких wrapper-ов.. V>Чистый OLE он на чистом C написан, всё остальное — wrapper-ы над ним..
Ну ты теоретик однако! Тебе теперь прямая дорога в форум COM, просвети тамошнюю общественность.
В Delphi и в C++ COM-объекты (правильнее даже говорить о COM-интерфейсах) являются родными понятиями. Когда вызывается метод интерфейса, происходит переход по адресу, как в VMT. Короче, RTFM батенька. RT, как говорится, FM.
V>По моему всё гораздо короче и понятнее.. V>Так что видно, что в вашем случае OLE только мешает..
В случае обработки XML? Я бы не сказал, COM-технологии позволяют позднее связывание, что даёт возможность использовать COM-объекты из скриптов.
И без тех самых врапперов, о которых ты тут говоришь.
Ты можешь подгружать XML-документы при помощи любого скриптового языка (включая не только VBS и JS, но и Perl, Pyton и пр.) Можно производить любые операции: XSLT-преобразования, поиск XML-узла через XPath, изменение, вырезание/копирование подветок и т.п.
При этом не нужно вообще никаких дополнительных движений. Создал объект и работай — ни TLB, ни IDL, ни h-файлов делать не нужно.
Удобно также обращаться к XML-файлам из веб-странички. Если учесть, что штатный XML-парсер может загружать данные по HTTP, то можно строить очень интерактивные HTML-странички-приложения.
R_M>Это не значит что COM отстой, тем более что причины устаревания технологии для меня не очевидны, а уже о смерти заявлять явно преждевременно. Но попытки представить ситуацию так, что COM умирает и про него надо забыть вполне свидетельствуют о том, что "MS отстой".
Это твои попытки, а не Микрософтовские. Слушай, я постоянно читаю статьи и в курсе Микрософтовской "догмы". Нигде у Микрософта не говорится, что COM умирает.
R_M> Дело не в том, есть там место или нет, а в том, M$ и дальше будет компостировать разработчиками мозги своими "революционными" технологиями, которые стали работать "еще лучше".
Слушай, тебе компостирует? Ты, вроде вообще на этом деле не пишешь. И мне не компостирует, хотя я постоянно под Микрософтом пишу.