Скомпилировать.hta файл.исполняемый

Я искал повсюду способ скомпилировать мой .hta-файл (и ресурсы) в a .файл EXE.

есть много приложений, которые утверждают, что могут это сделать, но они не работали для этого приложения, которое представляет собой смесь javascript и VB.

просто, (и наивно,) я не хочу, чтобы люди смотрели / трахались с кодом. Любые предложения или решения были бы весьма признательны.

EDIT: конечно, я понимаю, что javascript и VB не являются "компилируемыми", поскольку они интерпретируются языками. Я просто ищу способ по-настоящему скрыть источник.

6 ответов


вы можете "скомпилировать в exe", просто обернув HTA в исполняемый файл, который знает, как настроить контекст/окно HTA.

самый тривиальный подход (который звучит как ExeScript) заключается в том, чтобы сначала извлечь HTA/ресурсы, а затем выполнить их. Теоретически это можно сделать без временных файлов, введя данные в запущенный контекст IE, но задача становится более сложной. Внутренний JS может или не может быть запутан, и оболочка может или не может добавить дополнительный уровень запутывания / "шифрование". (PayMo, и я уверен, что есть и другие, использует обернутый контекстный подход для распространения одного запускаемого exe).

Если целью является защита "интеллектуальной собственности", наймите хорошего адвоката :-)


HTAEdit, который поставляется в комплекте с VBSedit, действительно не скрывает hta-код. Во время выполнения он извлекает исходный hta-файл в подкаталог в %temp% и передает его в mshta.exe на выполнение. Преобразованный exe, созданный VBSedit, похоже, не делает этого, насколько я могу судить.


попробуйте использовать VBSedit, Он определенно работает для преобразования как vbs, так и hta в exe


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

http://developer.yahoo.com/yui/compressor/

удачи.


вам не нужен компилятор, вам нужен шифратор / дешифратор, например, мой проект (в стадии разработки), проект CFS (Cryptographica File Security).


мой ключ-создать файл VBScript или JScript для динамического создания HTA. Таким образом, вы компилируете не HTA, а скрипт. Этот подход отвечает вашим требованиям безопасности намного лучше, чем HTA, упакованный в SFX.

Сначала подготовьте ресурсы-импортируйте в HTA все внешние файлы: скрипты, таблицы стилей и изображения (base64-encoded), чтобы сделать ваше HTA автономным приложением. Затем создайте файл VBScript и скопируйте все содержимое HTML из HTA в строковую переменную в скрипте, замена символов новой строки и вкладки на " & vbCrLf & " и " & vbTab & ". Добавить код создать окно HTA динамически, .write() эта строковая переменная в документе окна и выход из скрипта.

отметим, что Window_OnLoad() может работать неправильно из-за нажатия содержимого в окно, которое уже было загружено.

затем просто зашифруйте завершенный VBScript в exe (используя True encrypting utility, например Primal Script 2012, ExeScript, VbsEdit или ScriptCryptor). И изменить значок с PE Исследователь.

все это займет некоторое время, но это стоит делать.

UPD: вот пример подготовленного скрипта с помощью ссылке.