Приложение, которое я скомпилировал с помощью Visual Basic 6, может работать на моем компьютере с Windows XP. Но когда я выполняю тот же исполняемый файл на другом компьютере под управлением Windows 8, я всегда получаю Ошибка выполнения 52 - неверное имя или номер файла , как только я его запускаю. Я не могу запустить программу, даже если в этой программе нет команды «Shell», что приводит к ошибке «Bad file name».

Я использовал «Мастер упаковки и развертывания» для процесса упаковки. А также я зарегистрировал необходимые библиотеки DLL на ПК с Windows 8 вручную с помощью утилиты командной строки regsvr32.

Я также очистил весь реестр через очиститель реестра (Wise Registry Cleaner). Я использовал режим совместимости для Windows XP, но ничего не решило проблему.

Дополнительная информация:

  • Версия XP - SP 2
  • Windows 8 Версия-8.1
  • VB - VB 6.0
-3
JP Steve 10 Сен 2017 в 20:48

3 ответа

Лучший ответ

После некоторых исследований я нашел ответ на проблему. Это не было проблемой в кодировании; это было ВСЕ о совместимости с Windows 8. Перейдите на вкладку «Совместимость» окна свойств файла и выберите «Windows XP SP2» в разделе «Режим совместимости». Это все

0
JP Steve 23 Янв 2018 в 05:58

Windows 8 больше не позволяет писать программно в корне диска C: \ (и во многих других системных папках, таких как Program Files, Windows, System32, ...).

Попробуйте использовать подпапку.

-1
Giorgio Brausi 12 Сен 2017 в 07:10

Предполагая, что ваш код

If Dir("C:/file.txt") = "" Then...

Измените его на обратную косую черту ("\")

0
Bill Hileman 12 Сен 2017 в 14:18