Форум пользователей Visio

Форум по вопросам применения и программирования в Visio
Текущее время: 23 июн 2017, 05:32

Часовой пояс: UTC + 3 часа [ Летнее время ]


Правила форума


Размещение файлов в формате vsd (а не vsdx/vsdm), увеличивает вероятность ответа стремительным домкратом !!!



Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Конвертация файлов vsdx/vsdm для открытия в Visio2010
СообщениеДобавлено: 03 июн 2016, 13:22 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3330
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
Я пользуюсь Visio 2010
Tumanov в сообщении #4480 писал(а):
конвертер я установил. но почему-то у большинства моих коллег он работает корректно, а у меня нет (см. тему Конвертер файлов *.vsdx)!
несколько раз обновлял конвертер и внезапно увидел слова о возможности работы конвертера с командной строкой !
Изображение
Robink в скайпе дал мне наводку на пример работы с командной строкой в VBA. Огромное ему за это спасибо !!!
Robink в сообщении #6763 писал(а):
Код:
Dim str1 As String       
str1 = "C:\gs\gs9.16\bin\gswin32c.exe "   
str1 = str1 & "-dNODISPLAY "   
str1 = str1 & "-q "   
str1 = str1 & "-sFile=" & Path & " "   
str1 = str1 & "-dDumpMediaSizes "   
str1 = str1 & "C:\gs\gs9.16\toolbin\pdf_info.ps"       
Dim objShell As Object   
Dim objWshScriptExec As Object   
Dim objStdOut As Object

собственно сам код
Код:
Sub ConvertVSDX()
Dim va As Application, vd As Document
Dim ofn As String ' старое имя файла (vsdx/vsdm)
Dim nfn As String ' новое имя файла (vsd)
Dim str1 As String ' команда в командной строке
Dim ext As String
ofn = InputBox("Укажите путь к файлу vsdx(vsdm)")
ext = Right(ofn, 4)
If ext = "vsdx" Or ext = "vsdm" Then
nfn = Left(ofn, Len(ofn) - 1) ' отбрасываем последний символ
str1 = "c:\Program Files (x86)\Microsoft Office\Office15\VISCONV.EXE "
' в моем случае был такой путь. замените на ваш вариант при необходимости
str1 = str1 & ofn & " " & nfn ' формирование команды
Set objShell = CreateObject("WScript.Shell") ' создание объекта shell
Set objWshScriptExec = objShell.Exec(str1) ' выполнение команды
Set objStdOut = objWshScriptExec.StdOut ' стандартный вывод
Set va = GetObject(, "Visio.Application") ' получаем приложение
va.Visible = True
Set vd = va.Documents.OpenEx(nfn, visOpenRW)  ' открытие конвертированного файла
MsgBox "Документ открыт " & nfn
Else
If MsgBox("Повторить ?", vbYesNo, "Расширение файла отличается от vsdx/vsdm!") = vbYes Then
' пользователю выводится сообщение, что расширение отличается от vsdx/vsdm
' при ответе Да. перейти к началу кода
ConvertVSDX
Else
' если пользовател не желает повторять, выход и прощание
End If
End If
MsgBox "TheEnd!"
End Sub


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Конвертация файлов vsdx/vsdm для открытия в Visio2010
СообщениеДобавлено: 13 ноя 2016, 17:58 
Подскажите, пожалуйста, работает ли на данный момент конвертация из cmd windows? Второй день бьюсь, но этот номер 'visconv.exe <vsdx> <vsd>' из командной строки у меня не прокатывает. Прописываю файл-источник <vsdx>, файл для сохранения <vsd>. Команда отрабатывает за доли секунды и ничего не происходит.

Если открываю этот файл в Visio2010 (compatible pack установлен), то файл vsdx открывается без проблем.

Буду рад любому совету.
Спасибо.


Пожаловаться на это сообщение
Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Конвертация файлов vsdx/vsdm для открытия в Visio2010
СообщениеДобавлено: 13 ноя 2016, 18:40 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3330
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
не далее как позавчера (11.11.2016) я столкнулся с тем, что конвертер на работает
Surrogate в сообщении #10196 писал(а):
и конвертер снова перестал работать у меня
Tumanov в сообщении #4480 писал(а):
Microsoft Visio Compatibility Pack
Изображение
Страждущий писал(а):
открываю этот файл в Visio2010 (compatible pack установлен), то файл vsdx открывается без проблем.
а зачем тогда эта морока ?
Страждущий писал(а):
работает ли на данный момент конвертация из cmd windows?


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Конвертация файлов vsdx/vsdm для открытия в Visio2010
СообщениеДобавлено: 14 ноя 2016, 01:06 
Дело в том, что у меня порядка полутысячи файлов vsdx раскидано в директории и ее вложенных папках вперемешку с другими файлами. Изначально показалось нерационально лазить по папкам и каждый файл перегонять вручную в vsd (теперь-то после двухдневной мороки уж не знаю, где рационально, а где нет). Поэтому я планировал написать скриптик, к примеру, на python обхода дерева каталогов с поиском всех файлов vsdx и для каждого вызывать к выполнению внешнюю программу 'visconv.exe <vsdx> <vsd>'

Но, как я понял, этот капризный конвертер не работает именно сейчас, а до этого через командную строку обрабатывал...
Хм, неужели придется заниматься 'терпеливой' работой


Пожаловаться на это сообщение
Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Конвертация файлов vsdx/vsdm для открытия в Visio2010
СообщениеДобавлено: 14 ноя 2016, 01:12 
И да, когда пытаюсь запустить visconv.exe непосредственно кликаньем мышки, тоже ничего не происходит
Мрак


Пожаловаться на это сообщение
Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Конвертация файлов vsdx/vsdm для открытия в Visio2010
СообщениеДобавлено: 14 ноя 2016, 07:41 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3330
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
Страждущий писал(а):
неужели придется заниматься 'терпеливой' работой
теперь ясно!
конвертер вещь сама по себе капризная! у 95% моих коллег когда он установлен визио открывает vsdx, мне 'случайно" удалось найти упоминание о запуске конвертера из командной строки.
подозреваю, что не работает из-за того, что какие-то библиотеки на компе установлены с которыми конвертер конфликтует! возможно сейчас произошло обновление каких-то виндовских/офисных компонентов, которые и убили работоспособность конвертера Изображение. наверно можно попробовать откатывать обновления системы и смотреть оживет ли конвертер. хорошо если это произошло не так давно, я сам давно им не пользовался. трудно будет теперь отловить этот момент Изображение.
Теперь о грустном: скорее всего M$FT скорее всего не будет конвертер пытаться починить, они и раньше не пытались это сделать!
wiki в статье Microsoft Office писал(а):
Версии продукта и их поддержка

Для Office 2007 и будущих версий MS Office — продолжительность базовой поддержки 5 лет после выпуска продукта или 2 года после выпуска следующей версии продукта (что наступит позднее), расширенная поддержка будет доступна в течение 5 лет после окончания срока базовой поддержки.
Office 2010 — версия офисного пакета, базовая поддержка продукта прекращена 15 июля 2015 года.
так что сомневаюсь, что кто-то будет теперь заниматься конвертером со стороны разработчика.
как вариант найти в твоей конторе комп, на который давно не ставились обновления и попробовать конвертер на нем. если еще работает, то погонять скрипт на нем


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Конвертация файлов vsdx/vsdm для открытия в Visio2010
СообщениеДобавлено: 14 ноя 2016, 11:47 
Спасибо. Попробую покопать в этом направлении.


Пожаловаться на это сообщение
Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Конвертация файлов vsdx/vsdm для открытия в Visio2010
СообщениеДобавлено: 14 ноя 2016, 12:31 
Не в сети
Administrator

Зарегистрирован: 30 авг 2009, 11:02
Сообщений: 848
Очков репутации: 100575

Добавить очки репутацииУменьшить очки репутации
А вот сдается мне, что конвертор может быть достаточно примитивен...
Особенно если не ставить задачу "сконвертировать все". Ведь иногда достаточно просто иметь возможность посмотреть файл или хотя бы спасти изображение и текст. И не так важно, что где-то будет применена не та тема или что-то в этом роде.
Прямо захотелось сделать свой конвертор :)


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Конвертация файлов vsdx/vsdm для открытия в Visio2010
СообщениеДобавлено: 14 ноя 2016, 12:39 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3330
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
Tumanov писал(а):
Прямо захотелось сделать свой конвертор
годный план ! это будет спасением для множества ретроградов Изображение


Последний раз редактировалось Surrogate 21 апр 2017, 20:14, всего редактировалось 3 раз(а).
добавлена ссылка на интересную статью


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Конвертация файлов vsdx/vsdm для открытия в Visio2010
СообщениеДобавлено: 11 май 2017, 16:41 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3330
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
Страждущий писал(а):
Подскажите, пожалуйста, работает ли на данный момент конвертация из cmd windows?
конечно это дичайший костыль, но конвертация таки работает !
на одном из форумов разработчики из M$FT просили пользователя прислать дамп полученный таким образом
Цитата:
If you have Visual Studio, you can attach it to the running instance of Visio. When the crash occur, it will break into Visual Studio. You can save the dump file through Debug->Save Dump As.
решил и я попробовать:
1. запускаю командную строку
Изображение
2. вылетает сообщение об ошибке. выбираю пункт отладка
Изображение
3. Так как у меня на компе установлены две версии (2010 и 2015) MS Visual Studio, пришлось ответить
на вопрос в какой из версий будем отлаживать.
Изображение
В версии 2010 у меня не завелось. В 2015 сработало
4. Вылетело предупреждение об исключении
Изображение
я нажал прервать и о чудо, в папке появился сконвертированный файл !!!
не уверен что удастся получить пакетную обработку, как того желал
Страждущий писал(а):
Дело в том, что у меня порядка полутысячи файлов vsdx раскидано в директории и ее вложенных папках вперемешку с другими файлами. Изначально показалось нерационально лазить по папкам и каждый файл перегонять вручную в vsd (теперь-то после двухдневной мороки уж не знаю, где рационально, а где нет). Поэтому я планировал написать скриптик, к примеру, на python обхода дерева каталогов с поиском всех файлов vsdx и для каждого вызывать к выполнению внешнюю программу 'visconv.exe <vsdx> <vsd>'
я протестил с 5 документами все вроде работает.
может быть полезно для тех кто сидит на Visio 2010, имеет VS, но не хочет ставить Visio 2013/2016 на VirtualBox для конвертации файлов vsdx/vsdm Изображение


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Вы можете создать форум бесплатно PHPBB3 на Getbb.Ru, Также возможно сделать готовый форум PHPBB2 на Mybb2.ru
Русская поддержка phpBB