Есть ли инструмент для преобразования VB в язык сценариев, например, Python или Ruby? - PullRequest
2 голосов
/ 16 января 2009

Я обнаружил VB2Py , но он молчал почти 5 лет. Существуют ли какие-либо другие инструменты, которые можно использовать для преобразования проектов VB6 в Python, Ruby, Tcl, что угодно?

Ответы [ 3 ]

3 голосов
/ 16 января 2009

Скомпилируйте код VB либо в обычную DLL, либо в COM DLL. Все Pythons в Windows, включая ванильный дистрибутив ActivePython (IronPython не требуется), могут подключаться к оба типа DLL.

Я думаю, что это ваш лучший вариант. Как сказал Густаво, поиск чего-то, что скомпилирует произвольный код VB6 в Python, звучит как недостижимая мечта.

3 голосов
/ 16 января 2009

Я сомневаюсь, что было бы хорошим решением для этого, так как VB6 слишком полагается на Windows API и библиотеки VBRun, хотя вы могли бы переводить код, который делает что-то еще, кроме операций с графическим интерфейсом

Есть ли что-то особенное, что вам нужно сделать с этим кодом? Вы можете скомпилировать функциональность VB6 и представить его как объект COM и подключить его к python с IronPython или IronRuby , которые являются реализациями Python и Ruby в .Net, таким образом, позволяя вам получить доступ. Функциональность сети, хотя я не совсем уверен, легко ли подключаемые объекты COM могут быть подключены к этим интерпретаторам.

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

1 голос
/ 16 января 2009

Как правило, Python гораздо более выразительный, чем VB. Вещи, которые занимали много строк кода в VB, могут быть более просто представлены в Python.

Если VB действительно эпический по масштабу, ручная перезапись может быть трудной. Но поддерживать VB6 может быть так же сложно.

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...