Došlo k nevyřízené výjimce a proces byl ukončen.
ID aplikace: /LM/W3SVC/2/ROOT
ID procesu: 6928
Exception: System.Security.Cryptography.CryptographicException
Message: 系统找不到指定的路径。
StackTrace: 在 System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32 hr) V roce System.Security.Cryptography.SafeKeyHandle._FreeHKey (IntPtr pKeyCtx) In System.Security.Cryptography.SafeKeyHandle.ReleaseHandle() at System.Runtime.InteropServices.SafeHandle.InternalFinalize() at System.Runtime.InteropServices.SafeHandle.Dispose(Boolean disposing) at System.Runtime.InteropServices.SafeHandle.Finalize()
Existuje mnoho webů na IIS, kdo ví, která stránka tu anomálii vyvolává??? Neříkej to jasně, podrážděný
ID aplikace: /LM/W3SVC/2/ROOT Toto by měla být webová stránka, kde město uvádí, že chyba je hlášena, ale kdo ví, co to znamená
/LM/W3SVC/1/Root 里面各项都代表什么?
LM --- název lokálního serveru W3SVC ---- IIS server 1---- Webové stránky s ID stránky 1 Kořen--- kořen místa
Tento úryvek jsem stále našel na internetu a mírně jsem ho upravil, chybový záznam "Application ID: /LM/W3SVC/2/ROOT", tedy chybu způsobenou webem s ID 2
nebo vykonání
Relevantní informace můžeme vidět na webových stránkách
Zjistil jsem, kde je chyba, a pak jsem ji začal řešit...
Při ladění lokálně nebo publikování do lokálního IIS šifrování a dešifrování fungují bez problémů, ale když je služba publikována na vzdáleném serveru, při dešifrování se zobrazí následující chyba:
System.Security.Cryptography.CryptographicException:系统找不到指定的文件。
In Util.Security.RSAUtils.decrypt(String encryptData,String privateKey) na lokalitě D:\documents\visual studio2010\Projects\MSPJK\MSPJK\RSAUtils.cs: číslo řádku 175
In MSPJK.DAO.DAO.login(loginInfo loginInfo) lokalita D:\documents\visualstudio 2010\Projects\MSPJK\MSPJK\DAO.cs: číslo řádku 2052
Po nalezení velkého množství informací se to vyřešilo. Řešení je následující:
Zadejte kód:
RSACryptoServiceProvider provider = new RSACryptoServiceProvider(); Změněno na:
CspParameters RSAParams = nové CspParameters(); RSAParams.Flags = CspProviderFlags.UseMachineKeyStore; System.Security.Cryptography.RSACryptoServiceProvider provider = nový RSACryptoServiceProvider(1024, RSAParams); Otestujte znovu, dobře!
|