Προέκυψε μια ανεπίλυτη εξαίρεση και η διαδικασία τερματίστηκε.
Αναγνωριστικό εφαρμογής: /LM/W3SVC/2/ROOT
Αναγνωριστικό διαδικασίας: 6928
Exception: System.Security.Cryptography.CryptographicException
Message: 系统找不到指定的路径。
StackTrace: 在 System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32 hr) Σε System.Security.Cryptography.SafeKeyHandle._FreeHKey (IntPtr pKeyCtx) Στο System.Security.Cryptography.SafeKeyHandle.ReleaseHandle() στο System.Runtime.InteropServices.SafeHandle.InternalFinalize() στο System.Runtime.InteropServices.SafeHandle.Dispose(Boolean disposing) στο System.Runtime.InteropServices.SafeHandle.Finalize()
Υπάρχουν πολλοί ιστότοποι στις υπηρεσίες IIS, ποιος ξέρει ποιος ιστότοπος προκαλεί την ανωμαλία??? Μην το λες καθαρά, ευερέθιστος
Αναγνωριστικό εφαρμογής: /LM/W3SVC/2/ROOT Αυτός θα πρέπει να είναι ο ιστότοπος που η πόλη λέει ότι αναφέρεται το σφάλμα, αλλά ποιος ξέρει τι σημαίνει αυτό
/LM/W3SVC/1/Root 里面各项都代表什么?
lm --- όνομα τοπικού διακομιστή Διακομιστής W3SVC ---- IIS 1---- Ιστότοποι με αναγνωριστικό ιστότοπου 1 Ρίζα--- ρίζα ιστότοπου
Αυτό το απόσπασμα εξακολουθεί να είναι κάτι που βρήκα στο Διαδίκτυο και το τροποποίησα ελαφρώς, το αρχείο καταγραφής σφαλμάτων "Application ID: /LM/W3SVC/2/ROOT", δηλαδή το σφάλμα που προκαλείται από τον ιστότοπο με αναγνωριστικό τοποθεσίας 2
ή εκτελέστε
Μπορούμε να δούμε τις σχετικές πληροφορίες στον ιστότοπο
Έμαθα πού ήταν το λάθος και μετά άρχισα να το λύνω...
Κατά τον εντοπισμό σφαλμάτων τοπικά ή τη δημοσίευση σε τοπικές υπηρεσίες IIS, η κρυπτογράφηση και η αποκρυπτογράφηση λειτουργούν καλά, αλλά όταν μια υπηρεσία δημοσιεύεται σε έναν απομακρυσμένο διακομιστή, εμφανίζεται το ακόλουθο σφάλμα κατά την αποκρυπτογράφηση:
System.Security.Cryptography.CryptographicException:系统找不到指定的文件。
Στο Util.Security.RSAUtils.decrypt(String encryptData,String privateKey) στη θέση D:\documents\visual studio2010\Projects\MSPJK\MSPJK\RSAUtils.cs: αριθμός γραμμής 175
Στη θέση MSPJK.DAO.DAO.login(loginInfo loginInfo) D:\documents\visualstudio 2010\Projects\MSPJK\MSPJK\DAO.cs: αριθμός γραμμής 2052
Αφού βρήκε πολλές πληροφορίες, λύθηκε. Η λύση είναι η εξής:
Βάλτε τον κωδικό σε:
RSACryptoServiceProvider provider = νέος RSACryptoServiceProvider(); Άλλαξε σε:
CspParameters RSAParams = νέα CspParameters(); RSAParams.Flags = CspProviderFlags.UseMachineKeyStore; System.Security.Cryptography.RSACryptoServiceProvider = νέος RSACryptoServiceProvider(1024, RSAParams); Δοκιμάστε ξανά, ΟΚ!
|