다음을 통해 공유


AssemblyDelaySignAttribute 클래스

어셈블리가 만들어질 때 완전히 서명되지 않도록 지정합니다.

네임스페이스: System.Reflection
어셈블리: mscorlib(mscorlib.dll)

구문

‘선언
<ComVisibleAttribute(True)> _
<AttributeUsageAttribute(AttributeTargets.Assembly, Inherited:=False)> _
Public NotInheritable Class AssemblyDelaySignAttribute
    Inherits Attribute
‘사용 방법
Dim instance As AssemblyDelaySignAttribute
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets.Assembly, Inherited=false)] 
public sealed class AssemblyDelaySignAttribute : Attribute
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets::Assembly, Inherited=false)] 
public ref class AssemblyDelaySignAttribute sealed : public Attribute
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute AttributeUsageAttribute(AttributeTargets.Assembly, Inherited=false) */ 
public final class AssemblyDelaySignAttribute extends Attribute
ComVisibleAttribute(true) 
AttributeUsageAttribute(AttributeTargets.Assembly, Inherited=false) 
public final class AssemblyDelaySignAttribute extends Attribute

설명

어셈블리에 이 특성을 사용하면 나중에 Sn.exe 유틸리티와 같은 서명 도구로 채워지는 서명을 위해 공간이 예약됩니다. 어셈블리를 만든 사람에게 서명을 생성하는 데 사용할 개인 키에 액세스할 권한이 없으면 [assembly:AssemblyDelaySignAttribute(true)]와 같이 지연 서명 기능이 사용됩니다.

System.Runtime.CompilerServices의 클래스는 컴파일러에서만 사용하기 위한 것입니다. 따라서 컴파일러를 작성하는 경우에만 사용하십시오.

자세한 내용은 CLI(공용 언어 인프라) 설명서의 "Partition II: Metadata Definition and Semantics"를 참조하십시오. 이 설명서는 https://msdn.microsoft.com/net/ecma/http://www.ecma-international.org/publications/standards/Ecma-335.htm에서 온라인으로 볼 수 있습니다.

예제

다음 코드 예제에서는 AssemblyKeyFileAttribute와 함께 AssemblyDelaySignAttribute 특성을 사용하는 방법을 보여 줍니다. 이 예제를 컴파일하려면 강력한 이름 도구(Sn.exe)를 사용하여 TestPublicKey.snk라는 강력한 이름의 키 파일을 만들어야 합니다.

sn -k TestPublicKey.snk 

이 예제를 .dll로 컴파일합니다. 명령줄에서 컴파일할 경우 /t:library 옵션(C# 또는 Visual Basic의 경우)이나 /LD 링커 옵션(Visual C++의 경우)을 사용합니다.

Imports System
Imports System.Reflection

<assembly:AssemblyDelaySignAttribute(true)>
<assembly:AssemblyKeyFileAttribute("TestPublicKey.snk")>

Namespace DelaySign

    Public class Test
    End Class

End Namespace
using System;
using System.Reflection;

[assembly:AssemblyKeyFileAttribute("TestPublicKey.snk")]
[assembly:AssemblyDelaySignAttribute(true)]

namespace DelaySign
{
    public class Test { }
}
using namespace System;
using namespace System::Reflection;

[assembly:AssemblyKeyFileAttribute("TestPublicKey.snk")];
[assembly:AssemblyDelaySignAttribute(true)];

namespace DelaySign
{
    public ref class Test { };
}

상속 계층 구조

System.Object
   System.Attribute
    System.Reflection.AssemblyDelaySignAttribute

스레드로부터의 안전성

이 형식의 모든 public static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.

플랫폼

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

2.0, 1.1, 1.0에서 지원

.NET Compact Framework

2.0, 1.0에서 지원

참고 항목

참조

AssemblyDelaySignAttribute 멤버
System.Reflection 네임스페이스

기타 리소스

메타데이터 개요
메타데이터 및 자동 기술 구성 요소
MSIL로 컴파일