Java: Как я могу установить режим совместимости нативный .exe?

StackOverflow https://stackoverflow.com/questions/2893274

Вопрос

Таким образом, у меня есть нативные исполняемые (как для OS X, так и Windows), заправленные внутри .jar, который затем программически извлекается в расположение температуры и выполнено оттуда. К сожалению, этот исполняемый файл не будет работать должным образом на моем компьютере Windows (Win 7 64bit), когда я вручную устанавливаю режим совместимости в предустановку Windows XP, оно будет работать.

Есть ли способ сделать это программутически от Java?

Это было полезно?

Решение

Я верю, что есть способ сделать это, изменив реестр, поэтому вам придется использовать Java для программного изменения некоторых ключей реестра. Это не идеальное решение, конечно, и определенно не перекрестная платформа.

Вот ссылка на как достичь этого.

Кроме того, вы заберете пакет Java, который использует API Windows, быстрый поиск Google показывает это. Отказ Но я уверен, что есть больше способов доступа к реестру.

Другие советы

Я думаю, что вы действительно хотите исправить несовместимость в вашей родной EXE. Режим совместимости действительно для приложений, где у пользователя просто нет выбора. Я не могу сказать вам, сколько часов я потратил отладку встроенного поведения, вызванное пользователем случайно, включенным в режим совместимости - лучше всего избежать его, если у вас есть какой-либо выбор в этом вопросе.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top