Вопросы по Notepad++

Тема в разделе "WASM.BEGINNERS", создана пользователем Mikl___, 4 мар 2023.

  1. mantissa

    mantissa Мембер Команда форума

    Публикаций:
    0
    Регистрация:
    9 сен 2022
    Сообщения:
    167
    Мой итоговый скрипт для компиляции

    Код (Text):
    1. cls
    2. cmd /c chcp 1251
    3. NPE_CONSOLE local v+
    4. set path=C:\Users\bidlo\OneDrive\Документы\study\masm64
    5. cd "$(CURRENT_DIRECTORY)"
    6. cmd /c if exist $(NAME_PART)_err.txt del $(NAME_PART)_err.txt
    7. cmd /c if exist $(NAME_PART).obj del $(NAME_PART).obj
    8. cmd /c if exist $(NAME_PART).exe del $(NAME_PART).exe
    9. cmd /c for /f "eol=# tokens=2" %A in ($(FILE_NAME)) do @echo %A & exit
    10. goto $(OUTPUTL)
    11.  
    12. :GUI
    13. cmd /c ml64.exe /I"$(path)\include" /Zp16 /Cp /Zd /Zi /c $(NAME_PART).asm >> $(NAME_PART)_err.txt
    14. if $(EXITCODE) !=0 then
    15.    goto error
    16. endif
    17. cmd /c if exist $(NAME_PART).rc echo 1
    18. if $(OUTPUTL) == 1 then
    19.    cmd /c $(path)\bin\rc.exe /r /i"$(path)\include" $(NAME_PART).rc
    20.      if $(EXITCODE) !=0 then
    21.      goto error
    22.      endif
    23.    cmd /c link.exe /LIBPATH:"$(path)\lib" /LARGEADDRESSAWARE:NO /SUBSYSTEM:WINDOWS /entry:WinMain $(NAME_PART).obj $(NAME_PART).res >> $(NAME_PART)_err.txt
    24.    if $(EXITCODE) !=0 then
    25.      goto error
    26.    endif
    27. else
    28.    cmd /c link.exe /LIBPATH:"$(path)\lib" /LARGEADDRESSAWARE:NO /SUBSYSTEM:WINDOWS /entry:WinMain $(NAME_PART).obj >> $(NAME_PART)_err.txt
    29.    if $(EXITCODE) !=0 then
    30.      goto error
    31.    endif
    32. endif
    33. goto cleanUp
    34.  
    35. :CONSOLE
    36. cmd /c ml64.exe /I"$(path)\include" /Zp16 /Cp /Zd /Zi /c $(NAME_PART).asm >> $(NAME_PART)_err.txt
    37. if $(EXITCODE) !=0 goto error
    38. cmd /c link.exe /LIBPATH:"$(path)\lib" /LARGEADDRESSAWARE:NO /SUBSYSTEM:CONSOLE /entry:main $(NAME_PART).obj >> $(NAME_PART)_err.txt
    39. if $(EXITCODE) !=0 goto error
    40. goto cleanUp
    41.  
    42. :DLL
    43. echo Dll...Coming soon
    44. exit
    45.  
    46. :cleanUp
    47. cmd /c del $(NAME_PART)_err.txt
    48. cmd /c del $(NAME_PART).obj
    49. cls
    50. goto DEBUG
    51.  
    52. :error
    53. con_loadfrom $(NAME_PART)_err.txt
    54. exit
    55.  
    56. :DEBUG
    57. echo Для открытия x64dbg введите 1
    58. echo Для открытия hiew введите 2
    59. echo Для открытия ResourceHacker введите 3
    60. inputbox Enter...
    61. echo $(INPUT)
    62. if $(INPUT) == 1 then
    63.    goto X64DBG
    64. else if $(INPUT) == 3 then
    65.    goto RSCHACK
    66. else if $(INPUT) == 2 then
    67.    goto HIEW
    68. else
    69.    cls
    70. endif
    71. exit
    72.  
    73. :X64DBG
    74. cls
    75. npp_run x64dbg.exe $(CURRENT_DIRECTORY)\$(NAME_PART).exe
    76. exit
    77.  
    78. :RSCHACK
    79. cls
    80. echo NET
    81. exit
    82.  
    83. :HIEW
    84. cls
    85. npp_run $(path)\bin\hiew32.exe $(NAME_PART).exe
    86. exit
     

    Вложения:

    Mikl___ нравится это.
  2. codeok

    codeok New Member

    Публикаций:
    0
    Регистрация:
    20 апр 2023
    Сообщения:
    2
    Дополнил скрипт переводчиком. Банально скопировал строковые ресурсы из ml64 и прогнал их через yandex translate. Подмену ошибок сделал в маленькой консольной утилите.

    Код (Text):
    1.  
    2. cls
    3. set masm64=C:\masm64
    4. cd "$(CURRENT_DIRECTORY)"
    5. cmd /c if exist errors.txt del errors.txt
    6. cmd /c if exist $(NAME_PART).obj del $(NAME_PART).obj
    7. cmd /c if exist $(NAME_PART).exe del $(NAME_PART).exe
    8. //compile $(masm64)\bin\ml64 >> errors.txt ...
    9. if $(EXITCODE) !=0 goto exit
    10. // link $(masm64)\bin\link ...
    11. if $(EXITCODE) !=0 goto exit
    12. cmd /c $(NAME_PART).exe
    13. cmd /c del errors.txt
    14. cmd /c del $(NAME_PART).obj
    15. exit
    16. :exit
    17. cmd /c $(masm64)\bin64\masm_64_error_translate.exe errors.txt
    18. con_loadfrom errors.txt
    19.  
    Ссылка на GitHub
     
    mantissa нравится это.
  3. mantissa

    mantissa Мембер Команда форума

    Публикаций:
    0
    Регистрация:
    9 сен 2022
    Сообщения:
    167
    Советую в следующий раз переводить через deepl, контекстно зависимый переводчик с машинным обучением
     
    codeok и GRAFik нравится это.
  4. GRAFik

    GRAFik Active Member

    Публикаций:
    0
    Регистрация:
    14 мар 2020
    Сообщения:
    350
    mantissa, может еще какой-нибудь дельный совет дадите? :) Мне нужно из нескольких старых журналов в формате PDF, вырезать буквально по 5-6 страниц, из общего объема 1 журнала, где-то около 90-100 стр.
     
  5. codeok

    codeok New Member

    Публикаций:
    0
    Регистрация:
    20 апр 2023
    Сообщения:
    2
    Доброго дня.
    mantissa, я еще дорабатываю эту утилитку. А можете прояснить чем контекстный перевод независимых фраз будет лучше двойного алгоритма яндекса?
     
  6. mantissa

    mantissa Мембер Команда форума

    Публикаций:
    0
    Регистрация:
    9 сен 2022
    Сообщения:
    167
    здравствуйте, я просмотрел csv с переводом в вашем репозитории и заметил там несколько фраз, которые переводятся не совсем корректно в данном контексте.