Я использую ShellExecute для открытия файлов. На одной машине среди более чем 2000 пользователей я не могу открывать файлы doc. docx открываются с помощью Wordpad.
Word 2010 установлен правильно, и двойной щелчок в проводнике по файлу Word открывает слово правильно, более того, документ отображается с правильным значком в проводнике. Обратите внимание, что все остальные файлы работают нормально (например, xls, xlsx, pdf, ...)
Кто-нибудь знает почему? Я проверяю и «использую это приложение для открытия файлов», это проверено.
В коде я проверяю ошибку и знаю, что сообщение об ошибке:
SE_ERR_ASSOCINCOMPLETE
или SE_ERR_NOASSOC
(потому что в В обоих случаях я показываю ошибку «с типом файла не связано приложение», поэтому я не знаю, какая из ошибок существует, я должен выполнить отладку на стороне клиента, чтобы увидеть ее, но я не думаю, что это так важно в данном случае).
Есть у кого-нибудь идея? Вот что я использую для открытия файла:
ShellExecute(0, 'open', PWideChar(MyFilePath), '', '', SW_SHOWNORMAL);
Примечание: мне кажется, что проблема есть в реестре Windows для этого компьютера, это почти новая машина с Windows 7.
ПРИМЕЧАНИЕ для тех, кто голосует за закрытие. этот вопрос как вне темы: на самом деле это вопрос WinAPI: почему этот api не работает должным образом, когда он работает из проводника? Так что это не не по теме, особенно winapi в тегах.