本文整理汇总了C#中System.Security.Cryptography.CryptographicException类的典型用法代码示例。如果您正苦于以下问题:C# CryptographicException类的具体用法?C# CryptographicException怎么用?C# CryptographicException使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
CryptographicException类属于System.Security.Cryptography命名空间,在下文中一共展示了CryptographicException类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。
示例1: Main
//引入命名空间
using System;
using System.Text;
using System.Security.Cryptography;
using System.Runtime.Serialization;
class CryptographicExceptionMembers
{
[STAThread]
public static void Main(string[] args)
{
CryptographicExceptionMembers testRun =
new CryptographicExceptionMembers();
testRun.TestConstructors();
testRun.ShowProperties();
Console.WriteLine("This sample ended successfully; " +
" press Enter to exit.");
Console.ReadLine();
}
// Test each public implementation of the CryptographicException
// constructors.
private void TestConstructors()
{
EmptyConstructor();
IntConstructor();
StringConstructor();
StringExceptionConstructor();
StringStringConstructor();
}
private void EmptyConstructor()
{
// Construct a CryptographicException with no parameters.
CryptographicException cryptographicException =
new CryptographicException();
Console.WriteLine("Created an empty CryptographicException.");
}
private void IntConstructor()
{
// Construct a CryptographicException using the error code for an
// unexpected operation exception.
int exceptionNumber = unchecked((int)0x80131431);
CryptographicException cryptographicException =
new CryptographicException(exceptionNumber);
Console.WriteLine("Created a CryptographicException with the " +
"following error code: " + exceptionNumber);
}
private void StringConstructor()
{
// Construct a CryptographicException using a custom error message.
string errorMessage = ("Unexpected Operation exception.");
CryptographicException cryptographicException =
new CryptographicException(errorMessage);
Console.WriteLine("Created a CryptographicException with the " +
"following error message: " + errorMessage);
}
private void StringExceptionConstructor()
{
// Construct a CryptographicException using a custom error message
// and an inner exception.
string errorMessage = ("The current operation is not supported.");
NullReferenceException nullException = new NullReferenceException();
CryptographicException cryptographicException =
new CryptographicException(errorMessage, nullException);
Console.WriteLine("Created a CryptographicException with the " +
"following error message: " + errorMessage +
" and the inner exception of " + nullException.ToString());
}
private void StringStringConstructor()
{
// Create a CryptographicException using a time format and a the
// current date.
string dateFormat = "{0:t}";
string timeStamp = (DateTime.Now.ToString());
CryptographicException cryptographicException =
new CryptographicException(dateFormat, timeStamp);
Console.WriteLine("Created a CryptographicException with (" +
dateFormat + ") as the format and (" + timeStamp +
") as the message.");
}
// Construct an invalid DSACryptoServiceProvider to throw a
// CryptographicException for introspection.
private void ShowProperties()
{
try
{
// Create a DSACryptoServiceProvider with invalid provider type
// code to throw a CryptographicException exception.
CspParameters cspParams = new CspParameters(44);
DSACryptoServiceProvider DSAalg =
new DSACryptoServiceProvider(cspParams);
}
catch (CryptographicException ex)
{
// Retrieve the link to the help file for the exception.
string helpLink = ex.HelpLink;
// Retrieve the exception that caused the current
// CryptographicException exception.
System.Exception innerException = ex.InnerException;
string innerExceptionMessage = "";
if (innerException != null)
{
innerExceptionMessage = innerException.ToString();
}
// Retrieve the message that describes the exception.
string message = ex.Message;
// Retrieve the name of the application that caused the exception.
string exceptionSource = ex.Source;
// Retrieve the call stack at the time the exception occurred.
string stackTrace = ex.StackTrace;
// Retrieve the method that threw the exception.
System.Reflection.MethodBase targetSite = ex.TargetSite;
string siteName = targetSite.Name;
// Retrieve the entire exception as a single string.
string entireException = ex.ToString();
// GetObjectData
setSerializationInfo(ref ex);
// Get the root exception that caused the current
// CryptographicException exception.
System.Exception baseException = ex.GetBaseException();
string baseExceptionMessage = "";
if (baseException != null)
{
baseExceptionMessage = baseException.Message;
}
Console.WriteLine("Caught an expected exception:");
Console.WriteLine(entireException);
Console.WriteLine("\n");
Console.WriteLine("Properties of the exception are as follows:");
Console.WriteLine("Message: " + message);
Console.WriteLine("Source: " + exceptionSource);
Console.WriteLine("Stack trace: " + stackTrace);
Console.WriteLine("Help link: " + helpLink);
Console.WriteLine("Target site's name: " + siteName);
Console.WriteLine("Base exception message: " +
baseExceptionMessage);
Console.WriteLine("Inner exception message: " +
innerExceptionMessage);
}
}
private void setSerializationInfo(ref CryptographicException ex)
{
// Insert information about the exception into a serialized object.
FormatterConverter formatConverter = new FormatterConverter();
SerializationInfo serializationInfo =
new SerializationInfo(ex.GetType(), formatConverter);
StreamingContext streamingContext =
new StreamingContext(StreamingContextStates.All);
ex.GetObjectData(serializationInfo,streamingContext);
}
}
//
开发者ID:.NET开发者,项目名称:System.Security.Cryptography,代码行数:171,代码来源:CryptographicException 输出:
Created an empty CryptographicException.
Created a CryptographicException with the following error code: -2146233295
Created a CryptographicException with the following error message:
Unexpected Operation exception.
Created a CryptographicException with the following error message: The
current operation is not supported. and the inner exception of
System.NullReferenceException: Object reference not set to an instance of
an object.
Created a CryptographicException with ({0:t}) as the format and (2/24/2004
2:13:15 PM) as the message.
Caught an expected exception:
System.Security.Cryptography.CryptographicException: CryptoAPI
cryptographic service provider (CSP) for this implementation could not be
acquired.
at System.Security.Cryptography.DSACryptoServiceProvider..ctor(Int32
dwKeySize, CspParameters parameters)
at System.Security.Cryptography.DSACryptoServiceProvider..ctor(
CspParametersparameters)
at CryptographicExceptionMembers.ShowProperties() in c:\inetpub\
vssolutions\test\testbuild\consoleapplication1\class1.cs:line 109
Properties of the exception are as follows:
Message: CryptoAPI cryptographic service provider (CSP) for this
implementation could not be acquired.
Source: mscorlib
Stack trace:
at System.Security.Cryptography.DSACryptoServiceProvider..ctor(
Int32 dwKeySize, CspParameters parameters)
at System.Security.Cryptography.DSACryptoServiceProvider..ctor(
CspParameters parameters)
at CryptographicExceptionMembers.ShowProperties() in c:\inetpub\
vssolutions\test\testbuild\consoleapplication1\class1.cs:line 109
Help link:
Target site's name: .ctor
Base exception message: CryptoAPI cryptographic service provider (CSP) for
this implementation could not be acquired.
Inner exception message:
This sample ended successfully; press Enter to exit.
注:本文中的System.Security.Cryptography.CryptographicException类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论