Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 30296|Risposta: 1

[Fonte] Usa JSC per generare una dll in JavaScript per le chiamate C#

[Copiato link]
Pubblicato il 2020-12-2 12:47:18 | | | |
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.

Utilizza Jurassic per eseguire funzioni js sotto .net
https://www.itsvse.com/thread-4303-1-1.html
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)




Precedente:ASP.NET Core (iii) Creare dinamicamente istanze usando ActivatorUtilities
Prossimo:Python utilizza http.server per aprire un servizio http
Pubblicato il 16-08-2022 16:58:13 |
Impara a imparare
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com