Created attachment 551 [details] wine.log Сообщение из заявки http://rt.etersoft.ru/Ticket/Display.html?id=6883 В Windows 1С 8 открывает файлы разных расширений doc, mdi, pdf, jpg, tif предварительно их сохраняя во временную папку. Под wine etersoft файл сохраняется во временную папку и ничего более не происходит. Хотя эти файлы без проблем открываются из winefile или того же totalcommander. Для всех расширений сделаны соответствующие записи в реестре и созданы скрипт в папке c:\windows\command. Файлы всех расширений привязаны к соответствующим Linux приложениям. wine.log в аттаче.
1с клиент 8 умеет открывать во внешнем приложении файлы. Сначала файл сохраняется во временную папку(это работает, файл можно найти) и затем открывается в приложении связанное с данным расширением файла. Все файлы из под winefile открываются!! Из 1с ни в какую. по ссылке ftp://www.pspo.perm.ru/pub/windows.avi можно увидеть в ролике как это работает под windows. и по ссылке ftp://www.pspo.perm.ru/pub/wine.avi можно увидеть как это не работает под wine. лог при выполнении данных действий я уже приводил.
Приложите пожалуйста ваш скрипт для запуска приложений к баге.
(In reply to comment #2) > Приложите пожалуйста ваш скрипт для > запуска приложений к баге. > $ ls -l ~/.wine/dosdevices/c:/windows/command итого 200 -rwxrwxr-x 1 ddv wineadmin 280 Июн 9 11:48 imageview -rwxrwxr-x 1 ddv wineadmin 271 Дек 20 2007 ooffice -rwxrwxr-x 1 ddv wineadmin 49572 Дек 20 2007 start.exe lrwxrwxrwx 1 ddv wineadmin 39 Июн 9 11:55 winelocktest.exe.so -> /usr/lib/wine/winelocktest-linux.exe.so -rwxrwxr-x 1 ddv wineadmin 135168 Дек 20 2007 zip.exe Скрипт написанный мной: $ cat ~/.wine/dosdevices/c:/windows/command/imageview #!/bin/sh # Wrap script for search and run Kuickshow in host system UNIXPATH=`winepath "$1"` IMAGEVIEW=`which kuickshow 2>/dev/null` test -z $IMAGEVIEW && { echo "Kuickshow is not found on your system, check for imageview executable in PATH" ; exit 1 ; } $IMAGEVIEW "$UNIXPATH" Скрипт из пакета wine: $ cat ~/.wine/dosdevices/c:/windows/command/ooffice #!/bin/sh # Wrap script for search and run OOo in host system UNIXPATH=`winepath "$1"` OOFFICE=`which ooffice 2>/dev/null` test -z "$OOFFICE" && OOFFICE=`which openoffice.org2.2 2>/dev/null` test -z "$OOFFICE" && OOFFICE=`which soffice 2>/dev/null` $OOFFICE "$UNIXPATH" Оба скрипта отрабатывают из winefile, но не работают из 1С8
Пробовал добавлять во вложение (например к эл.письму) doc файл. При нажатии на открыть открывается просто winefile. Буду тестировать дальше.
Удостоверься, что твой способ нормально работает на винде.
Под виндой при попытке открыть выводится диалог открытия файла и после нажатия на "открыть" открывается IE со встроеным в него word. Wine: Трейс по +process trace:process:CreateProcessW app (null) cmdline L"explorer C:\\windows\\temp\\123g.doc" trace:process:find_exe_file looking for L"explorer" trace:process:find_exe_file Trying native exe L"C:\\windows\\explorer.exe" trace:process:CreateProcessW starting L"C:\\windows\\explorer.exe" as Win32 binary (0x10000000-0x10003000) trace:process:init_current_directory starting in L"C:\\" 0x1c trace:process:__wine_kernel_init starting process name=L"C:\\windows\\explorer.exe" argv[0]=L"explorer" trace:process:CreateProcessW started process pid 0032 tid 0033 trace:process:CreateProcessW app (null) cmdline L"C:\\windows\\system32\\winefile.exe C:\\windows\\temp\\123g.doc\\" trace:process:find_exe_file looking for L"C:\\windows\\system32\\winefile.exe" trace:process:find_exe_file Trying native exe L"C:\\windows\\system32\\winefile.exe" trace:process:find_exe_file Trying built-in exe L"C:\\windows\\system32\\winefile.exe" trace:process:CreateProcessW starting L"C:\\windows\\system32\\winefile.exe" as Winelib app trace:process:init_current_directory starting in L"C:\\" 0x18 trace:process:__wine_kernel_init starting process name=L"C:\\windows\\system32\\winefile.exe" argv[0]=L"C:\\windows\\system32\\winefile.exe" trace:process:CreateProcessW started process pid 0034 tid 0035
trace:process:CreateProcessW app (null) cmdline L"explorer C:\\windows\\temp\\123g.doc" Ну вот, значит они вместо запуска по расширению через ShellExec вызывают explorer с нужным файлом. Метод странный, надо сказать. Нам значит надо проверить, как в винде себя ведёт explorer файл.doc и как у нас, и исправить поведение (открывать через ShellExec). Исправление explorer выделить в отдельную багу.
> Нам значит надо проверить, как в винде себя > ведёт explorer файл.doc и как у нас, и исправить > поведение (открывать через ShellExec). В винде происходит просто запуск Word, в wine порисходит запуск winefile. > Исправление explorer выделить в отдельную > багу. Создал: http://bugs.etersoft.ru/show_bug.cgi?id=2465
Проблема ещё не решена, поэтому бага не может быть закрыта.
Исправил зависимую багу. Сейчас должно всё работать. Необходимо протестировать
На сколько я смог проверить, проблема больше не существует. Ждем новой сборки и закрываем.