ShellExecuteEx не может открыть изображение, пока mspaint является приложением по умолчанию, начиная с Windows 10C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 ShellExecuteEx не может открыть изображение, пока mspaint является приложением по умолчанию, начиная с Windows 10

Сообщение Anonymous »

Выполнение следующего кода приведет к ошибке, если mspaint выбран в качестве приложения по умолчанию для изображений.
Установка любого другого приложения по умолчанию для изображений приложение, например «Фотографии» откроет изображение в выбранном приложении без ошибок.
Использование ShExecInfo.lpVerb = L"edit" откроет изображение с помощью mspaint без ошибок. p>
Проблема возникает начиная с Windows 10.

Код: Выделить всё

#include 

int main()
{
SHELLEXECUTEINFO ShExecInfo;
ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
ShExecInfo.fMask = NULL;
ShExecInfo.hwnd = NULL;
ShExecInfo.lpVerb = L"open"; //L"edit"
ShExecInfo.lpFile = L"C:/test.jpg";
ShExecInfo.lpParameters = NULL;
ShExecInfo.lpDirectory = NULL;
ShExecInfo.nShow = SW_MAXIMIZE;
ShExecInfo.hInstApp = NULL;

ShellExecuteEx(&ShExecInfo);

return 0;
}
Изображение

Это известная ошибка Microsoft?


Подробнее здесь: https://stackoverflow.com/questions/662 ... windows-10
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

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

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»