Et ubehandlet unntak oppsto, og prosessen ble avsluttet.
Applikasjons-ID: /LM/W3SVC/2/ROOT
Prosess-ID: 6928
Exception: System.Security.Cryptography.CryptographicException
Message: 系统找不到指定的路径。
StackTrace: 在 System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32 hr) I System.Security.Cryptography.SafeKeyHandle._FreeHKey (IntPtr pKeyCtx) I System.Security.Cryptography.SafeKeyHandle.ReleaseHandle() på System.Runtime.InteropServices.SafeHandle.InternalFinalize() at System.Runtime.InteropServices.SafeHandle.Dispose (boolsk disposing) på System.Runtime.InteropServices.SafeHandle.Finalize()
Det finnes mange nettsider på IIS, hvem vet hvilken nettside som kaster anomalien??? Ikke si det tydelig, irritabel
Applikasjons-ID: /LM/W3SVC/2/ROOT Dette skal være nettsiden der kommunen sier at feilen er rapportert, men hvem vet hva dette betyr
/LM/W3SVC/1/Root 里面各项都代表什么?
LM --- lokalt servernavn W3SVC ---- IIS-server 1---- Nettsteder med nettsted-ID 1 Rot--- stedrot
Dette avsnittet er fortsatt noe jeg fant på Internett, og jeg endret det litt, feilloggen "Application ID: /LM/W3SVC/2/ROOT", altså feilen forårsaket av nettsiden med site-ID 2
eller utføre
Vi kan se relevant informasjon på nettsiden
Jeg fant ut hvor feilen var, og så begynte jeg å løse den...
Når man feilsøker lokalt eller publiserer til lokal IIS, fungerer kryptering og dekryptering fint, men når en tjeneste publiseres på en ekstern server, vises følgende feil under dekrypteringen:
System.Security.Cryptography.CryptographicException:系统找不到指定的文件。
I Util.Security.RSAUtils.decrypt(String encryptData,String privateKey) på sted D:\documents\visual studio2010\Projects\MSPJK\MSPJK\RSAUtils.cs: linjenummer 175
I MSPJK.DAO.DAO.login(loginInfo loginInfo) sted D:\documents\visualstudio 2010\Projects\MSPJK\MSPJK\DAO.cs: linjenummer 2052
Etter å ha funnet mye informasjon, ble det løst. Løsningen er som følger:
Skriv inn koden:
RSACryptoServiceProvider provider = ny RSACryptoServiceProvider(); Endret til:
CspParametere RSAParams = nye CspParametere(); RSAParams.Flags = CspProviderFlags.UseMachineKeyStore; System.Security.Cryptography.RSACryptoServiceProvider provider = ny RSACryptoServiceProvider (1024, RSAParams); Test igjen, OK!
|