This documentation is archived and is not being maintained.

CodeEntryPointMethod Class

Represents the entry point method of an executable.

Namespace:  System.CodeDom
Assembly:  System (in System.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
[ClassInterfaceAttribute(ClassInterfaceType::AutoDispatch)]
public ref class CodeEntryPointMethod : public CodeMemberMethod

The CodeEntryPointMethod type exposes the following members.

  NameDescription
Public methodCodeEntryPointMethodInitializes a new instance of the CodeEntryPointMethod class.
Top

  NameDescription
Public propertyAttributesGets or sets the attributes of the member. (Inherited from CodeTypeMember.)
Public propertyCommentsGets the collection of comments for the type member. (Inherited from CodeTypeMember.)
Public propertyCustomAttributesGets or sets the custom attributes of the member. (Inherited from CodeTypeMember.)
Public propertyEndDirectivesGets the end directives for the member. (Inherited from CodeTypeMember.)
Public propertyImplementationTypesGets the data types of the interfaces implemented by this method, unless it is a private method implementation, which is indicated by the PrivateImplementationType property. (Inherited from CodeMemberMethod.)
Public propertyLinePragmaGets or sets the line on which the type member statement occurs. (Inherited from CodeTypeMember.)
Public propertyNameGets or sets the name of the member. (Inherited from CodeTypeMember.)
Public propertyParametersGets the parameter declarations for the method. (Inherited from CodeMemberMethod.)
Public propertyPrivateImplementationTypeGets or sets the data type of the interface this method, if private, implements a method of, if any. (Inherited from CodeMemberMethod.)
Public propertyReturnTypeGets or sets the data type of the return value of the method. (Inherited from CodeMemberMethod.)
Public propertyReturnTypeCustomAttributesGets the custom attributes of the return type of the method. (Inherited from CodeMemberMethod.)
Public propertyStartDirectivesGets the start directives for the member. (Inherited from CodeTypeMember.)
Public propertyStatementsGets the statements within the method. (Inherited from CodeMemberMethod.)
Public propertyTypeParametersGets the type parameters for the current generic method. (Inherited from CodeMemberMethod.)
Public propertyUserDataGets the user-definable data for the current object. (Inherited from CodeObject.)
Top

  NameDescription
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

  NameDescription
Public eventPopulateImplementationTypesAn event that will be raised the first time the ImplementationTypes collection is accessed. (Inherited from CodeMemberMethod.)
Public eventPopulateParametersAn event that will be raised the first time the Parameters collection is accessed. (Inherited from CodeMemberMethod.)
Public eventPopulateStatementsAn event that will be raised the first time the Statements collection is accessed. (Inherited from CodeMemberMethod.)
Top

A CodeEntryPointMethod is a CodeMemberMethod that represents the entry point method of an executable.

This example demonstrates using a CodeEntryPointMethod to indicate the method to start program execution at.


// 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;
   


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Show: