次の方法で共有


CodeEntryPointMethod クラス

実行可能ファイルのエントリ ポイント メソッドを表します。

名前空間: System.CodeDom
アセンブリ: System (system.dll 内)

構文

'宣言
<SerializableAttribute> _
<ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)> _
<ComVisibleAttribute(True)> _
Public Class CodeEntryPointMethod
    Inherits CodeMemberMethod
'使用
Dim instance As CodeEntryPointMethod
[SerializableAttribute] 
[ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)] 
[ComVisibleAttribute(true)] 
public class CodeEntryPointMethod : CodeMemberMethod
[SerializableAttribute] 
[ClassInterfaceAttribute(ClassInterfaceType::AutoDispatch)] 
[ComVisibleAttribute(true)] 
public ref class CodeEntryPointMethod : public CodeMemberMethod
/** @attribute SerializableAttribute() */ 
/** @attribute ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch) */ 
/** @attribute ComVisibleAttribute(true) */ 
public class CodeEntryPointMethod extends CodeMemberMethod
SerializableAttribute 
ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch) 
ComVisibleAttribute(true) 
public class CodeEntryPointMethod extends CodeMemberMethod

解説

CodeEntryPointMethod は、実行可能ファイルのエントリ ポイント メソッドを表す CodeMemberMethod です。

使用例

CodeEntryPointMethod を使用して、プログラムの実行を開始するメソッドを示す例を次に示します。

' Builds a Hello World Program Graph using System.CodeDom objects
Public Shared Function BuildHelloWorldGraph() As CodeCompileUnit
   ' Create a new CodeCompileUnit to contain the program graph
   Dim CompileUnit As New CodeCompileUnit()
   
   ' Declare a new namespace object and name it
   Dim Samples As New CodeNamespace("Samples")
   ' Add the namespace object to the compile unit
   CompileUnit.Namespaces.Add(Samples)
   
   ' Add a new namespace import for the System namespace
   Samples.Imports.Add(New CodeNamespaceImport("System"))
   
   ' Declare a new type object and name it
   Dim Class1 As New CodeTypeDeclaration("Class1")
   ' Add the new type to the namespace object's type collection
   Samples.Types.Add(Class1)
   
   ' Declare a new code entry point method
   Dim Start As New CodeEntryPointMethod()
   ' Create a new method invoke expression
   Dim cs1 As New CodeMethodInvokeExpression(New CodeTypeReferenceExpression("System.Console"), "WriteLine", New CodePrimitiveExpression("Hello World!"))
   ' Call the System.Console.WriteLine method
   ' Pass a primitive string parameter to the WriteLine method
   ' Add the new method code statement
   Start.Statements.Add(New CodeExpressionStatement(cs1))
   
   ' Add the code entry point method to the type's members collection
   Class1.Members.Add(Start)
   
   Return CompileUnit

End Function 'BuildHelloWorldGraph         
// Builds a Hello World Program Graph using System.CodeDom objects
public static CodeCompileUnit BuildHelloWorldGraph()
{            
    // Create a new CodeCompileUnit to contain the program graph
    CodeCompileUnit CompileUnit = new CodeCompileUnit();

    // Declare a new namespace object and name it
    CodeNamespace Samples = new CodeNamespace("Samples");
    // Add the namespace object to the compile unit
    CompileUnit.Namespaces.Add( Samples );

    // Add a new namespace import for the System namespace
    Samples.Imports.Add( new CodeNamespaceImport("System") );            

    // Declare a new type object and name it
    CodeTypeDeclaration Class1 = new CodeTypeDeclaration("Class1");
    // Add the new type to the namespace object's type collection
    Samples.Types.Add(Class1);            

    // Declare a new code entry point method
    CodeEntryPointMethod Start = new CodeEntryPointMethod();
    // Create a new method invoke expression
    CodeMethodInvokeExpression cs1 = new CodeMethodInvokeExpression( 
        // Call the System.Console.WriteLine method
        new CodeTypeReferenceExpression("System.Console"), "WriteLine", 
        // Pass a primitive string parameter to the WriteLine method
        new CodePrimitiveExpression("Hello World!") );
    // Add the new method code statement
    Start.Statements.Add(new CodeExpressionStatement(cs1));        

    // Add the code entry point method to the type's members collection
    Class1.Members.Add( Start );

    return CompileUnit;
// Builds a Hello World Program Graph using System.CodeDom objects
static CodeCompileUnit^ BuildHelloWorldGraph()
{
   
   // Create a new CodeCompileUnit to contain the program graph
   CodeCompileUnit^ CompileUnit = gcnew CodeCompileUnit;
   
   // Declare a new namespace object and name it
   CodeNamespace^ Samples = gcnew CodeNamespace( "Samples" );
   
   // Add the namespace object to the compile unit
   CompileUnit->Namespaces->Add( Samples );
   
   // Add a new namespace import for the System namespace
   Samples->Imports->Add( gcnew CodeNamespaceImport( "System" ) );
   
   // Declare a new type object and name it
   CodeTypeDeclaration^ Class1 = gcnew CodeTypeDeclaration( "Class1" );
   
   // Add the new type to the namespace object's type collection
   Samples->Types->Add( Class1 );
   
   // Declare a new code entry point method
   CodeEntryPointMethod^ Start = gcnew CodeEntryPointMethod;
   
   // Create a new method invoke expression
   array<CodeExpression^>^temp = {gcnew CodePrimitiveExpression( "Hello World!" )};
   CodeMethodInvokeExpression^ cs1 = gcnew CodeMethodInvokeExpression( gcnew CodeTypeReferenceExpression( "System.Console" ),"WriteLine",temp );
   
   // Add the new method code statement
   Start->Statements->Add( gcnew CodeExpressionStatement( cs1 ) );
   
   // Add the code entry point method to the type's members collection
   Class1->Members->Add( Start );
   return CompileUnit;
   
// Builds a Hello World Program Graph using System.CodeDom objects
public static CodeCompileUnit BuildHelloWorldGraph()
{
    // Create a new CodeCompileUnit to contain the program graph
    CodeCompileUnit compileUnit = new CodeCompileUnit();
    // Declare a new namespace object and name it
    CodeNamespace samples = new CodeNamespace("Samples");
    // Add the namespace object to the compile unit
    compileUnit.get_Namespaces().Add(samples);
    // Add a new namespace import for the System namespace
    samples.get_Imports().Add(new CodeNamespaceImport("System"));
    // Declare a new type object and name it
    CodeTypeDeclaration class1 = new CodeTypeDeclaration("Class1");
    // Add the new type to the namespace object's type collection
    samples.get_Types().Add(class1);
    // Declare a new code entry point method
    CodeEntryPointMethod start = new CodeEntryPointMethod();
    // Create a new method invoke expression
    CodeMethodInvokeExpression cs1 = new CodeMethodInvokeExpression(new 
        CodeTypeReferenceExpression("System.Console"),
        "WriteLine", new CodeExpression[] { new 
        CodePrimitiveExpression("Hello World!") });
    // Call the System.Console.WriteLine method
    // Pass a primitive string parameter to the WriteLine method
    // Add the new method code statement
    start.get_Statements().Add(new CodeExpressionStatement(cs1));
    // Add the code entry point method to the type's members collection
    class1.get_Members().Add(start);

    return compileUnit;

継承階層

System.Object
   System.CodeDom.CodeObject
     System.CodeDom.CodeTypeMember
       System.CodeDom.CodeMemberMethod
        System.CodeDom.CodeEntryPointMethod

スレッド セーフ

この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

Windows 98, Windows 2000 SP4, Windows Millennium Edition, 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

参照

関連項目

CodeEntryPointMethod メンバ
System.CodeDom 名前空間
CodeMemberMethod