Krav: Når vi simulerer HTTP-forespørsler, kan forespørselsparameterne og forespørselsinnholdet involvere noe algoritmeinnhold, algoritmen kan finnes i JavaScript, hvis vi oversetter js-algoritmen til programmeringsspråket vi bruker (f.eks. Java, C#), er det vanskeligere, vanligvis er js-innholdet komprimert og forvirret, så hvis vi direkte oversetter js til et klassebibliotek for oss å kalle, er det veldig bra.
Bruk JSC for å generere exe-programmet i JavaScript
test1.js koden er som følger:
Åpne VS 2019-utviklerkommandoen og skriv inn følgende:
Prøv å kjøre main.exe-programmet, vi kjører programmet gjennom cmd-kommandoen, dobbeltklikker direkte, og programmet blinker forbi, som følger:
Bruk JSC for å generere et DLL-bibliotek med JavaScript
test.js koden er som følger:
Kommandoen er som følger:
Lag et nytt .NET 4-konsollprosjekt som refererer til common.dll klassebiblioteket
Instansier deretter objektet og kaller metoden deres. Koden er som følger:
Som vist nedenfor:
Du kan bruke ILSpy-verktøyet for å se den genererte dll-kildekoden, som vist i figuren nedenfor:
jsc program file path: C:\Windows\Microsoft.NET\Framework\v4.0.30319\jsc.exe
Parameter:
Microsoft (R) JScript Compiler versjon 14.00.3752 for Microsoft (R) .NET Framework versjon 4.0.30319 Opphavsrett (C) Microsoft Corporation. Alle rettigheter forbeholdt.
JSC [alternativer] <源文件> [[alternativer] <源文件>...]
JScript-kompilatoralternativer
- Utdatafil - /out:<file> Spesifiserer navnet på den binære utdatafilen /t[arget]:exe Lag konsollapplikasjon (standard) /t[arget]: winexe for å lage en Windows-applikasjon /t[arget]: biblioteket oppretter en biblioteksassembler /platform:<platform> Begrenser plattformene denne koden kan kjøres på; Må være x86, Itanium, x64 eller hvilken som helst CPU (standardplattform).
- Inndatafil - /autoref[+|-] Autoreferanse-assemblies basert på importerte navnerom og fullt kvalifiserte navn (på som standard) /lib:<path> Spesifiserer den ekstra katalogen du vil søke etter referanser i /r[eference]:<filliste> Refererer til metadata fra den angitte assemblerfilen <filliste>: <samlingsnavn>[; <forsamlingens navn>...]
- Kilde - /win32res:<file> Spesifiserer Win32-ressursfiler (.res) /res[ource]:<info> Legg inn den angitte ressursen : <info><filename>[,<name>[,,offentlig|privat]] /linkres[ource]:<info> Lenker den angitte ressursen til denne samlingen : <info><filename>[,<name>[,,offentlig|privat]]
- Kodegenerering - /debug[+|-] for å sende en debug-melding /fast[+|-] deaktiverer språkfunksjoner for å gjøre kodegenerering bedre /warnaserror[+|-] behandler advarselen som en feil /w[arn]:<level> Sett varslingsnivået (0-4)
- Diverse - @<filename> For flere alternativer, vennligst les svarfilen /? Hjelp med show /hjelp viser hjelp /d[efine]:<symbols> Definerer betingede kompilasjonssymboler /nologo viser ikke kompilatorens opphavsrettsmerke /print[+|-] gir print()-funksjonen
- Avansert - /kodeside:<id> Åpne kildefilen med den angitte kodeside-ID-en /lcid:<id> Bruk den spesifiserte LCID for meldinger og standard kodesider /nostdlib[+|-] importerer ikke standardbiblioteket (mscorlib.dll) og endrer autoref-standarden til av /utf8output[+|-] sender ut kompilatorutgang i UTF-8-tegnkoding /versionsafe[+|-] spesifiserer en standardverdi for medlemmer som ikke er merket som "override" eller "hide" (Slutt)
|