Požadavky: Když simulujeme HTTP požadavky, parametry požadavků a obsah požadavků mohou obsahovat nějaký obsah algoritmu, algoritmus lze najít v JavaScriptu, pokud přeložíme algoritmus js do používaného programovacího jazyka (např. Java, C#), je to obtížnější, obvykle je obsah js komprimovaný a zmatený, takže pokud přímo přeložíme js do knihovny tříd, kterou voláme, je to velmi dobré.
Použijte JSC k vygenerování exe programu v JavaScriptu
test1.js kód je následující:
Otevřete příkaz vývojáře VS 2019 a zadejte následující:
Zkuste spustit main.exe program, spustíme ho příkazem cmd, dvojklikem přímo a program se objeví, a to následovně:
Použijte JSC k vytvoření dll knihovny JavaScriptu
test.js kód je následující:
Příkaz je následující:
Vytvořte nový .NET 4 konzolový projekt, který odkazuje na knihovnu tříd common.dll
Poté instancujte objekt a zavolejte jeho metodu. Kód je následující:
Jak je uvedeno níže:
Můžete použít nástroj ILSpy k zobrazení generovaného zdrojového kódu dll, jak je znázorněno na obrázku níže:
jsc programová cesta: C:\Windows\Microsoft.NET\Framework\v4.0.30319\jsc.exe
Parametr:
Microsoft (R) JScript Compiler verze 14.00.3752 for Microsoft (R) .NET Framework verze 4.0.30319 Copyright (C) Microsoft Corporation. Všechna práva vyhrazena.
JSC [možnosti] <源文件> [[možnosti] <源文件>...]
Možnosti kompilátoru JScript
- Výstupní soubor - /out:<file> Specifikuje název binárního výstupního souboru /t[arget]:exe Vytvořit konzolovou aplikaci (výchozí) /t[arget]: winexe pro vytvoření Windows aplikace /t[arget]: knihovna vytváří knihovní assembler /platform:<platform> Omezuje platformy, na kterých lze tento kód spustit; Musí to být x86, Itanium, x64 nebo jakýkoli CPU (výchozí platforma)
- Vstupní soubor - /autoref[+|-] Automatické odkazování na assemblery založené na importovaných jmenných prostorech a plně kvalifikovaných názvech (zapnutých ve výchozím nastavení) /lib:<path> Specifikuje další adresář, ve kterém chcete hledat reference /r[eference]:<seznam souborů> Odkazuje na metadata ze specifikovaného assemblerového souboru <seznam souborů>: <název sestavení>[; <název sestavení>...]
- Zdroj - /win32res:<file> Specifikuje Win32 resource soubory (.res) /res[ource]:<info> Vložte zadaný zdroj <info>: <filename>[,<name>[,veřejné|soukromé]] /linkres[ource]:<info> Spojuje specifikovaný zdroj s touto sestavou <info>: <filename>[,<name>[,veřejné|soukromé]]
- Generování kódu - /debug[+|-] pro vydání debug zprávy /fast[+|-] deaktivuje jazykové funkce, aby bylo generování kódu lepší /warnaserror[+|-] považuje varování za chybu /w[arn]:<level> Nastavte varovnou úroveň (0-4)
- Různé - @<filename> Pro více možností si prosím přečtěte soubor s odpověďmi /? Ukázat pomoc /nápověda ukazuje pomoc /d[efine]:<symbols> Definuje podmíněné kompilační symboly /nologo nezobrazuje ochrannou známku kompilátoru /print[+|-] poskytuje funkci print()
- Pokročilé - /codepage:<id> Otevřete zdrojový soubor s zadaným ID kódové stránky /lcid:<id> Použijte specifikovaný LCID pro zprávy a výchozí kódové stránky /nostdlib[+|-] neimportuje standardní knihovnu (mscorlib.dll) a mění výchozí automatické nastavení na vypnuto /utf8output[+|-] vysílá výstup kompilátoru v kódování znaků UTF-8 /versionsafe[+|-] specifikuje výchozí hodnotu pro členy, kteří nejsou označeni jako "přepisovat" nebo "skrýt" (Konec)
|