2009-12-13 3 views
3

Есть ли способ для элементов управления ActiveX работать в Linux? Я бы предположил, что ответ отрицательный, но просто хочу быть уверенным.ActiveX на Linux с использованием Mono?

Моя компания рассматривает порт Linux проекта ASP.NET (используя Mono), но использует элементы управления ActiveX довольно сильно, поэтому мы задаемся вопросом, возможно ли это.

Извините, если вопрос немой!

+1

Работают ли они на Firefox/Chrome (маловероятно)? Может быть, с помощью WINE? В любом случае, звучит как плохая идея ... – Kobi

+0

@ Kobi Nope, просто IE. Звучит плохо для меня тоже, LOL. –

ответ

5

Даже если ActiveX поддерживался в Linux, вы все равно не должны его использовать, так как он довольно чуждо (как в «трудно поддерживать») в этой среде.

Мой совет - переписать весь проект с помощью AJAX или вспышки таким образом, чтобы он запускался в любом браузере на большинстве платформ.


Моно не ActiveX! Даже если вы можете переписать с использованием монопользователя на стороне клиента для activeX, ваш код будет работать только в том случае, если клиентская машина имеет моноустановку.

+0

@lexu Многие элементы управления ActiveX являются сторонними компонентами, у которых, возможно, нет альтернатив, поэтому я думаю, что это не сработает. Спасибо хоть! –

+0

@ David - даже если вы не подключаетесь к Linux, вам нужно отойти от ActiveX. Объединенная доля рынка для всех версий IE составляет до 65% (IIRC) и неуклонно снижается. –

+0

Stephen: это зависит от того, работает ли он на стороне клиента ActiveX или на стороне сервера. Ваш комментарий имеет значение, если элементы управления работают на стороне клиента, но в этом случае элементы управления не будут влиять на порт в Linux и Mono: элемент - это всего лишь элемент , а Apache и т. Д. Будут обслуживать файлы OCX так же счастливо, как и любой другой вид файла. – itowlson

2

Если вы вынуждены использовать сторонние элементы управления ActiveX, вы не можете использовать их непосредственно в Linux - они ожидают, ,

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

0

Как вариант ответа gf, вы можете запустить Mono внутри Wine в Linux. У Mono есть поддержка COM Interop, а Wine поддерживает COM, поэтому в теории это будет работать.

Если вы хотите запустить Mono atop Wine atop Linux, это другое дело, так как оно увеличивает количество вещей, которые могут сломаться.

Смежные вопросы