LINUX.ORG.RU

Переход офиса на Linux. Запуск .exe приложения

 , , ,


0

1

Приветствую. В компании имеется написанное еще в 2000-х на Delphi приложение .exe. Работает с базой Firebird. Данные записываются в файл .gdb. Процесс работы таков: на сервере установлен Firebird. В каталоге с .exe приложением имеются его конфиги (пути к файлу с БД) и сам файл базы .gdb. Каталог расшарен по сети. На клиентские машины ставится минимальная клиентская версия firebird. На рабочий стол кидается ярлык на .exe приложение в расшаренном каталоге с сервера. Под Wine приложение не запускается: «Ошибка могла быть вызвана проблемой в программе или недоработкой в Wine…». Остаётся только VirtualBox с WinXP в режиме интеграции с рабочим столом? Идея норм, но для виртуальной машины нужно выделять еще один IP адрес. Что для крупного офиса с большим количеством машин такое себе занятие. Может у кого есть какие мнения на этот счёт?

Дистрибутив Linux Mint 20.3

Есть вариант поставить винду в режиме терминального сервера и прокидывать конкретное приложение, если уж готовы держать винду в виртуалках.

Ну и да, попробуй запустить локальную копию в вайне без этих извращений

Каталог расшарен по сети.

ya-betmen ★★★★★
()
Последнее исправление: ya-betmen (всего исправлений: 3)
Ответ на: комментарий от ya-betmen

У ТСа проблема с IPшниками. Я тоже думал предложить..

но для виртуальной машины нужно выделять еще один IP адрес.

А что.. если NAT выбрать сетевым интерфейсом?


В теме вообще не хватает приложенного лога с ошибками.

Clockwork ★★★★★
()
Последнее исправление: Clockwork (всего исправлений: 2)

для виртуальной машины нужно выделять еще один IP адрес

Нет. Но тебе придётся попотеть, чтобы дать виртуальным машинам доступ к диску под правильными логинами в AD.

LamerOk ★★★★★
()
Ответ на: комментарий от Clockwork

У него проблема с ип если вартуалки ставить. Можно же где-то завести один на всех терминальный сервер

ya-betmen ★★★★★
()
Ответ на: комментарий от Clockwork

Для виртуалки с WinXP выставил NAT. Интернет есть. Но мне нужно, чтобы виртуалка могла шарить в сеть. У нас сервер на винде. Linux как хостовая ОС шарится по этому серверу через smb:// Каким образом эту шару через самбу пробросить в виртуалку с nat ума не приложу.

xSPiRiTx
() автор топика
Ответ на: комментарий от xSPiRiTx

Тогда поддерживаю Clockwork.

Запусти программу в терминале и выложи на какой-нибудь пейстбин логи. Может дело вовсе не в сети, а в настройках префикса.

Radjah ★★★★★
()

И че вобще за софтина такая что до сих пор нужна (не смотря на прогресс)?

И что, штатного 1С-ника нема? Али он «занятой»?

hargard ★★
()
Ответ на: комментарий от xSPiRiTx

Я подумал, что можно перенаправить порт на свой локальный айпи: Virtualbox + ssh + сеть (комментарий)

Но если там самба, придется упороться..

ps: а вот, выше подсказывают cifs

Clockwork ★★★★★
()
Последнее исправление: Clockwork (всего исправлений: 2)

Ошибка могла быть вызвана проблемой в программе или недоработкой в Wine…

Вайнов много разных белых и красных. Можно в порядке эксперимента накатить playonlinux и поочерёдно менять версии wine попутно наблюдая лог отладки и устанавливая (там же через интерфейс playonlinux) недостающие библиотеки. И вероятнее всего таки запустится на каком то варианте. Ну, а дальше использовать как есть или самим воссоздать окружение wine с которым всё получилось, зафиксировать и использовать. Конечно приложение обязательно нужно будет тотально протестировать. Просто если получится, это будет наилучший и самый правильный вариант. Яб денёк целый ради такого попердолился на вашем месте.

LINUX-ORG-RU ★★★★★
()

А сложно погонять всякие разные версии вайна, ну как для запуска капризной старой игрушки? Когда то в PlayOnLinux можно было пачками ставить префиксы с разными версиями вайна начиная от бородатых 0.*

kirill_rrr ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

прислушаюсь к вашему совету и на этой неделе обязательно попробую через play on linux

xSPiRiTx
() автор топика
Ответ на: комментарий от xSPiRiTx

короче после того как смонтировал расшаренный каталог с программой через «cifs» его удалось закинуть в винде в virtualbox. Теперь думаю - а возможно ли каким-то чудом сделать ярлык, который запускал бы виртуальную машину в фоне без интерфейса, но при этом после запуска по ярлыку открывалось окно программы из виртуалки…

xSPiRiTx
() автор топика
Ответ на: комментарий от xSPiRiTx

А что с 1С впереди? Она нативная под Линукс есть.

KOV ★★
()
Ответ на: комментарий от xSPiRiTx

VBoxSDL - тупо запуск виртуалки одним окном без обвеса
Сворачивать/разворачивать каким-нибудь xdotool/wmctrl или что там еще есть
Я бы лучше с wine разобрался, у меня дельфипомойка на нём работала вполне сносно.

crutch_master ★★★★★
()
Последнее исправление: crutch_master (всего исправлений: 2)
Ответ на: комментарий от xSPiRiTx

Можно. На терминал-сервере на офтопике с сеансами на основе ВМ.

Или таки, перенести ее функционал в 1С и забыть как страшный сон.

hargard ★★
()
Ответ на: комментарий от crutch_master

так пытаюсь..никак с wine не запускается. Даже если и запустится, то там еще надо будет firebird базу прикручивать…

xSPiRiTx
() автор топика
Ответ на: комментарий от xSPiRiTx

а теперь стопорнулся на том, что принтер сетевой. Разумеется его не видит виртуалка с NAT

xSPiRiTx
() автор топика
Ответ на: комментарий от xSPiRiTx

Вот выхлоп запуска программы:

002c:fixme:winediag:LdrInitializeThunk wine-staging 7.7 is a testing version containing experimental patches. 002c:fixme:winediag:LdrInitializeThunk Please mention your exact version when filing bug reports on winehq.org. MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0

0104:fixme:font:freetype_set_outline_text_metrics failed to read full_nameW for font L"Ani"! wine: Unhandled exception 0x0eedfade in thread 104 at address 7B011646 (thread 0104), starting debugger… 010c:fixme:imm:ImeSetActiveContext (0x9a17d8, 1): stub 010c:fixme:imm:ImmReleaseContext (00010114, 009A17D8): stub 0118:fixme:imm:ImeSetActiveContext (0x4cad0, 0): stub 0118:fixme:imm:ImmReleaseContext (00000000000100D8, 000000000004CAD0): stub 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 010c:fixme:dbghelp:elf_search_auxv can’t find symbol in module 0104:err:virtual:virtual_setup_exception stack overflow 1220 bytes in thread 0104 addr 0x7bc5a25a stack 0x820b3c (0x820000-0x821000-0x920000) Process of pid=0100 has terminated No process loaded, cannot execute ‘echo Modules:’ Cannot get info on module while no process is loaded No process loaded, cannot execute ‘echo Threads:’ process tid prio name (all IDs are in hex) 00000038 services.exe 0000003c 0
00000040 0
0000004c 0
0000005c 0
00000078 0
000000a8 0
000000c4 0
000000dc 0
00000044 winedevice.exe 00000048 0
00000054 0
00000058 0
00000060 0
00000064 0
000000d0 0
00000068 winedevice.exe 0000006c 0
0000007c 0
00000080 0
00000084 0
00000088 0
0000008c 0
00000090 0
00000070 explorer.exe 00000074 0
0000009c 0
000000a0 0
00000094 plugplay.exe 00000098 0
000000b0 0
000000b4 0
000000b8 0
000000bc svchost.exe 000000c0 0
000000c8 0
000000cc 0
000000d4 rpcss.exe 000000d8 0
000000e0 0
000000e4 0
000000e8 0
000000ec 0
000000f0 0
00000124 0
000000f8 conhost.exe 000000fc 0
00000114 explorer.exe 00000118 0
0000011c 0
00000120 0
winedbg: Internal crash at 0041EB61

xSPiRiTx
() автор топика
Ответ на: комментарий от crutch_master

увы, исходников этого поделия нет.

Короче пока что остановился на варианте с терминальным подключением к серверу с приложением через remmina (или через что-нить другое, пробую еще)

xSPiRiTx
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.