Изменение кодировки в программе, написанной на Visual Basic

Тема в разделе "WASM.BEGINNERS", создана пользователем Osram, 19 янв 2025.

  1. Osram

    Osram New Member

    Публикаций:
    0
    Регистрация:
    19 янв 2025
    Сообщения:
    8
    Привет, Я профан в программировании. У меня есть программа, написанная на Visual Basic6, которая является многоязычной. Существуют языковые файлы *.txt, содержащие фразы, используемые в программе. Но не все. Некоторые фразы появляются только в файле *.exe и не могут быть полностью преобразованы в польский язык. Польских букв нет. Файл *exe имеет кодировку ANSI и UTF-16. Можно ли изменить эту кодировку в соответствии с вашими потребностями?
     

    Вложения:

  2. Thetrik

    Thetrik UA6527P

    Публикаций:
    0
    Регистрация:
    25 июл 2011
    Сообщения:
    887
    При желании можно, также можно на любой шрифт поменять.
     
  3. Osram

    Osram New Member

    Публикаций:
    0
    Регистрация:
    19 янв 2025
    Сообщения:
    8
    как это можно сделать
     
  4. Thetrik

    Thetrik UA6527P

    Публикаций:
    0
    Регистрация:
    25 июл 2011
    Сообщения:
    887
    Наверняка есть специальные редакторы. Я все вручную делаю в HEX редакторе.
    Есть еще такой вариант - написать специальную программу которая подключится к Вашей и поменяет строки интерфейса при запуске. Плюсы программ на VB6 что там все объекты являются COM объектами к которым можно присоединится в любой момент и вызывать их методы.
     
  5. Osram

    Osram New Member

    Публикаций:
    0
    Регистрация:
    19 янв 2025
    Сообщения:
    8

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

    Thetrik UA6527P

    Публикаций:
    0
    Регистрация:
    25 июл 2011
    Сообщения:
    887
    Тут есть личные сообщения, пишите.
     
  7. Osram

    Osram New Member

    Публикаций:
    0
    Регистрация:
    19 янв 2025
    Сообщения:
    8
    Я изменил все выражения в программе. Сначала использую VBLocalize а потом hex HxD, но когда запускаю программу, то в некоторых местах нет польских символов (ś; ć; ą и т.д.) они есть в кодировке UTF16 и не знаю почему. Даже если я поставлю польский символ в шестнадцатеричном формате, он отображается в программе как вопросительный знак или другой символ.
    --- Сообщение объединено, 19 янв 2025 ---
    а там где есть кодировка ASCII всё ок.
    --- Сообщение объединено, 19 янв 2025 ---
    ANSI
     
  8. Thetrik

    Thetrik UA6527P

    Публикаций:
    0
    Регистрация:
    25 июл 2011
    Сообщения:
    887
    Osram, нужно кодовую страницу шрифта указывать еще, т.к. у VB6 стандартные ANSI контролы.
     
  9. Osram

    Osram New Member

    Публикаций:
    0
    Регистрация:
    19 янв 2025
    Сообщения:
    8
    только в двух или трех местах был ansicpg1252
    Я изменил его на 1250, и этого достаточно? Или нет
     
  10. Thetrik

    Thetrik UA6527P

    Публикаций:
    0
    Регистрация:
    25 июл 2011
    Сообщения:
    887
    Я не знаю как у Вас приложение сделано. Если в коде кодовые страницы прописываются через внешний файл, то думаю можно.
     
  11. Osram

    Osram New Member

    Публикаций:
    0
    Регистрация:
    19 янв 2025
    Сообщения:
    8
    и как его увидеть?
    Что вам нужно знать о нем?
    возможно, exe-файл
     
  12. alex_dz

    alex_dz Active Member

    Публикаций:
    0
    Регистрация:
    26 июл 2006
    Сообщения:
    484
    VB6 поддерживает юникод?
     
  13. Thetrik

    Thetrik UA6527P

    Публикаций:
    0
    Регистрация:
    25 июл 2011
    Сообщения:
    887
    В VB6 все строки юникодные, но встроенные контролы нет. Если использовать такие либо такие то там полный юникод. В дополнение можно использовать юникодные WINAPI.
     
  14. alex_dz

    alex_dz Active Member

    Публикаций:
    0
    Регистрация:
    26 июл 2006
    Сообщения:
    484
    шикарно как на древнющую технологию 25+летней давности!
    --- Сообщение объединено, 20 янв 2025 ---
    вот почему Linux ** подобые ОС (может также MacOS) сходу подумали и не запаривались кодовыми страницами для 100 500 язиков а сразу делали UTF-8 для всего мира? :)
     
  15. Osram

    Osram New Member

    Публикаций:
    0
    Регистрация:
    19 янв 2025
    Сообщения:
    8
    Приветствую вас,
    Вот файлы: языковые файлы в формате *txt и exe-файлы.
    Один exe-файл оригинальный, а другой с кряком и частично исправленными выражениями. Потому что не все включено в языковой файл txt.
    Пожалуйста, посмотрите и скажите мне, возможно ли сделать так, как я хочу.
    С уважением
    https://easyupload.io/hcvp8r
     
  16. Osram

    Osram New Member

    Публикаций:
    0
    Регистрация:
    19 янв 2025
    Сообщения:
    8
    Thetrik,
    Вы можете помочь мне?
    Расскажи мне, как это сделать в Hex
     
  17. Thetrik

    Thetrik UA6527P

    Публикаций:
    0
    Регистрация:
    25 июл 2011
    Сообщения:
    887
    Катастрофически не хватает времени. Реверсить прогу, тем более бесплатно, нет ни времени, ни желания. По сути все сводится сначала к анализу как строки попадают в тот или иной контрол и затем соответственно правка значений. У VB6 есть свой собственный формат ресурсов для контролов, в котором храняться значения по умолчанию (возможно они прямо оттуда берутся), также там (если указан отличный от дефолта шрифт), есть инфа о шрифте и его кодовой странице. Все это нужно анализировать и изучать.
     
    alex_dz нравится это.