Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 30296|Odpověď: 1

[Zdroj] Použijte JSC k vytvoření dll v JavaScriptu pro volání v C#

[Kopírovat odkaz]
Zveřejněno 2020-12-2 12:47:18 | | | |
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é.

Využití Jurassic k provádění js funkcí pod .net
https://www.itsvse.com/thread-4303-1-1.html
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)




Předchozí:ASP.NET Jádro (iii) Dynamicky vytvářet instance pomocí ActivatorUtilities
Další:Python používá http.server k otevření http služby
Zveřejněno 16. 8. 2022 16:58:13 |
Učte se učit
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com