Requisiti: Quando simuliamo richieste HTTP, i parametri e il contenuto delle richieste possono coinvolgere alcuni contenuti dell'algoritmo, l'algoritmo può essere trovato da JavaScript; se traduciamo l'algoritmo js nel linguaggio di programmazione che usiamo (ad esempio Java, C#), è più difficile, di solito il contenuto js è compresso e confuso, quindi se traduciamo direttamente js in una libreria di classi da chiamare, è molto buono.
Usa JSC per generare il programma exe in JavaScript
test1.js codice è il seguente:
Apri il comando sviluppatore VS 2019 e inserisci quanto segue:
Proviamo a eseguire il programma main.exe, eseguiamo il programma tramite il comando cmd, doppio clic diretto e il programma passerà rapidamente, come segue:
Usa JSC per generare una libreria dll di JavaScript
test.js codice è il seguente:
Il comando è il seguente:
Crea un nuovo progetto console .NET 4 che faccia riferimento alla libreria di classi common.dll
Poi istanzia l'oggetto e chiama il suo metodo. Il codice è il seguente:
Come mostrato di seguito:
Puoi utilizzare lo strumento ILSpy per visualizzare il codice sorgente dll generato, come mostrato nella figura sottostante:
Percorso file di programma jsc: C:\Windows\Microsoft.NET\Framework\v4.0.30319\jsc.exe
Parametro:
Microsoft (R) JScript Compilatore versione 14.00.3752 for Microsoft (R) .NET Framework versione 4.0.30319 Copyright (C) Microsoft Corporation. Tutti i diritti riservati.
JSC [opzioni] <源文件> [[opzioni] <源文件>...]
Opzioni del compilatore JScript
- File di output - /out:<file> Specifica il nome del file binario di output /t[arget]:exe Crea applicazione console (predefinito) /t[arget]: winexe per creare un'applicazione Windows /t[arget]: la libreria crea un assembly di libreria /platform:<platform> Limita le piattaforme su cui questo codice può essere eseguito; Deve essere x86, Itanium, x64 o qualsiasi CPU (piattaforma predefinita)
- File di input - /autoref[+|-] Assemblaggi di riferimento automatico basati su namespace importati e nomi completamente qualificati (attivi di default) /lib:<path> Specifica la directory aggiuntiva in cui vuoi cercare riferimenti /r[eference]:<lista file> Riferisce i metadati dal file assembly specificato <lista file>: <nome assembly>[; <nome assemblea>...]
-Fonte- /win32res:<file> Specifica i file di risorsa Win32 (.res) /res[ource]:<info> Incorpora la risorsa specificata <info>: <filename>[,<name>[,pubblic|privato]] /linkres[ource]:<info> Collega la risorsa specificata a questo insieme <info>: <filename>[,<name>[,pubblic|privato]]
- Generazione di codice - /debug[+|-] per emettere un messaggio di debug /fast[+|-] disabilita le funzionalità del linguaggio per migliorare la generazione del codice /warnaserror[+|-] tratta l'avviso come un errore /w[arn]:<level> Imposta il livello di allarme (0-4)
- Varie - @<filename> Per altre opzioni, leggi il file di risposta /? Aiuto per mostrare /aiuto mostra aiuto /d[efine]:<symbols> Definisce simboli di compilazione condizionali /nologo non mostra il marchio di copyright del compilatore /print[+|-] fornisce la funzione print()
- Avanzato - /codepage:<id> Apri il file sorgente con l'ID della code page specificato /lcid:<id> Usa l'LCID specificato per i messaggi e le code page predefinite /nostdlib[+|-] non importa la libreria standard (mscorlib.dll) e cambia il predefinito autoref su off /utf8output[+|-] emette output del compilatore nella codifica dei caratteri UTF-8 /versionsafe[+|-] specifica un valore predefinito per i membri che non sono contrassegnati come "override" o "hide" (Fine)
|