Требования: При моделировании HTTP-запросов параметры запроса и содержимое запроса могут включать содержимое алгоритма, алгоритм можно найти на JavaScript, если мы переводим алгоритм js на используемый язык программирования (например, Java, C#), это сложнее, обычно содержимое js сжимается и путается, поэтому если мы напрямую переводим js в библиотеку классов для вызова, это очень хорошо.
Используйте JSC для генерации exe-программы на JavaScript
test1.js код выглядит следующим образом:
Откройте команду разработчика VS 2019 и введите следующее:
Попробуйте запустить main.exe программу, мы запускаем программу через команду cmd, дважды кликаем напрямую, и программа промигает, следующим образом:
Используйте JSC для генерации библиотеки dll JavaScript
test.js код выглядит следующим образом:
Команда следующая:
Создайте новый консольный проект .NET 4, который будет ссылаться на библиотеку классов common.dll
Затем инстанцируйте объект и вызовите его метод. Код таков:
Как показано ниже:
Вы можете использовать инструмент ILSpy, чтобы просмотреть сгенерированный исходный код dll, как показано на рисунке ниже:
jsc Program File Path: C:\Windows\Microsoft.NET\Framework\v4.0.30319\jsc.exe
Параметр:
Microsoft (R) JScript Compiler версии 14.00.3752 для Microsoft (R) .NET Framework версии 4.0.30319 Авторские права (C) Корпорация Microsoft. Все права защищены.
JSC [Опции] <源文件> [[Опции] <源文件>...]
Опции компилятора JScript
- Выходной файл - /out:<file> Указывает имя бинарного выходного файла /t[arget]:exe Создать консольное приложение (по умолчанию) /t[arget]: winexe для создания приложения для Windows /t[arget]: библиотека создаёт библиотечную сборку /platform:<platform> Ограничивает платформы, на которых может выполняться этот код; Должен быть x86, Itanium, x64 или любой процессор (платформа по умолчанию)
- Входный файл - /autoref[+|-] Автоссылка на сборки на основе импортированных пространств имён и полностью квалифицированных имен (по умолчанию включено) /lib:<path> Указывает дополнительный каталог, в котором вы хотите искать ссылки /r[eference]:<список файлов> Ссылки на метаданные из указанного файла ассемблера <список файлов>: <название собрания>[; <название собрания>...]
- Источник - /win32res:<file> Указывает файлы ресурсов Win32 (.res) /res[источник]:<info> Встраивать указанный ресурс <info>: <filename>[,<name>[,публично|частно]] /linkres[ource]:<info> Связывает указанный ресурс с этой сборкой <info>: <filename>[,<name>[,публично|частно]]
- Генерация кода - /debug[+|-] для отправки отладочного сообщения /fast[+|-] отключает функции языка для улучшения генерации кода /warnaserror[+|-] рассматривает предупреждение как ошибку /w[arn]:<level> Установить уровень предупреждения (0-4)
- Разное - @<filename> Для дополнительных вариантов, пожалуйста, прочитайте файл с ответами /? Помогите показать /help shows help /d[efine]:<symbols> Определяет символы условной компиляции /nologo не отображает знак авторского права компилятора /print[+|-] выполняет функцию print()
- Продвинутый - /codepage:<id> Откройте исходный файл с указанным идентификатором кодовой страницы /lcid:<id> Используйте указанный LCID для сообщений и страниц по умолчанию /nostdlib[+|-] не импортирует стандартную библиотеку (mscorlib.dll) и меняет autoref по умолчанию на выключенное /utf8output[+|-] излучает выход компилятора в кодировке символов UTF-8 /versionsafe[+|-] указывает значение по умолчанию для участников, которые не отмечены как «override» или «hide» (Конец)
|