kasper_sky
Antivirus
- Сообщения
- 116
- Репутация
- 1
Доброго времени суток.
Задача довольно простая: нужно при компиляции скрипта внедрить в него определенный текст, который каждый раз(перед компиляцией) изменяется.
Пробовал своими силами решить, но что-то не получается(я не силен в работе WinAPI с ресурсами).
Если у кого-то есть идеи, как это попроще реализовать - я только буду рад.
Итак, мой код.
1. Вспомогательный скрипт changebuild.au3
2. Основной код
Как вы заметили, в папке со скриптами еще есть и файл build.txt, в нем - только пара цифер.
Загвоздка у меня возникла на этапе
в основном скрипте.
Кто что скажет?
Задача довольно простая: нужно при компиляции скрипта внедрить в него определенный текст, который каждый раз(перед компиляцией) изменяется.
Пробовал своими силами решить, но что-то не получается(я не силен в работе WinAPI с ресурсами).
Если у кого-то есть идеи, как это попроще реализовать - я только буду рад.
Итак, мой код.
1. Вспомогательный скрипт changebuild.au3
Код:
$build = FileRead('build.txt')
$build += 1
FileDelete('build.txt')
FileWrite('build.txt', $build)
2. Основной код
Код:
#AutoIt3Wrapper_Run_Before=changebuild.au3
#AutoIt3Wrapper_Res_File_Add=build.txt, TXT, BUILD_NUMBER
#include <WinAPIEx.au3>
If @Compiled Then
$hResource = _WinAPI_FindResource(_WinAPI_GetModuleHandle(0), 'TXT', 'BUILD_NUMBER')
MsgBox(0,'$hResource',$hResource)
$hLoad = _WinAPI_LoadResource(_WinAPI_GetModuleHandle(0), $hResource)
MsgBox(0,'$hLoad',$hLoad)
$lock = _WinAPI_LockResource($hLoad)
MsgBox(0,'$lock',$lock)
$build = FileRead($hLoad)
MsgBox(0,'$build',$build)
EndIf
Как вы заметили, в папке со скриптами еще есть и файл build.txt, в нем - только пара цифер.
Загвоздка у меня возникла на этапе
Код:
$build = FileRead($hLoad)
MsgBox(0,'$build',$build)
в основном скрипте.
Кто что скажет?