! DSBLDA.f90

! This module contains the Automation interfaces of the objects defined in 
! D:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin\IDE\devbld.pkg
! Generated by the Fortran Module Wizard on xx/xx/xx

	MODULE DSBLDA
		USE DFWINTY
		USE DFAUTO
		IMPLICIT NONE
	

		! Enums		
		! DsArrangeStyle (Passed to Windows.Arrange to arrange the windows.)
			INTEGER, PARAMETER ::	dsMinimize = 1	! Minimized windows.
			INTEGER, PARAMETER ::	dsTileHorizontal = 2	! Tiles the windows horizontally.
			INTEGER, PARAMETER ::	dsTileVertical = 3	! Tiles the windows vertically.
			INTEGER, PARAMETER ::	dsCascade = 4	! Cascades the windows.
		! DsButtonType (Represents the button type.)
			INTEGER, PARAMETER ::	dsGlyph = 1	! Button only has an image.
			INTEGER, PARAMETER ::	dsText = 2	! Buton only has text.
		! DsSaveChanges (Indicates what to do with changes when closing a file.)
			INTEGER, PARAMETER ::	dsSaveChangesYes = 1	! Save changes before closing.
			INTEGER, PARAMETER ::	dsSaveChangesNo = 2	! Discard changes before closing.
			INTEGER, PARAMETER ::	dsSaveChangesPrompt = 3	! Ask user if they want to save changes.
		! DsSaveStatus (Represents the result of a save operation.)
			INTEGER, PARAMETER ::	dsSaveSucceeded = 1	! The save operation succeeded.
			INTEGER, PARAMETER ::	dsSaveCanceled = 2	! The save operation was canceled by the user.
		! DsWindowState (Represents the possible states of a window.)
			INTEGER, PARAMETER ::	dsWindowStateMaximized = 1	! Window is mazimized.
			INTEGER, PARAMETER ::	dsWindowStateMinimized = 2	! Window is minimized.
			INTEGER, PARAMETER ::	dsWindowStateNormal = 3	! Window is neither mazimized or minimized.


		! Module Procedures
		CONTAINS
			!Adds a configuration to the project
  			SUBROUTINE IBuildProject_AddConfiguration($OBJECT, szConfig, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_AddConfiguration
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*), INTENT(IN)	:: szConfig	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szConfig
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szConfig, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG2', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 102, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_AddConfiguration
			!Adds a file to the project
  			SUBROUTINE IBuildProject_AddFile($OBJECT, szFile, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_AddFile
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*), INTENT(IN)	:: szFile	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szFile
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szFile, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG2', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 101, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_AddFile
			!Returns the Developer Studio Application object
  			INTEGER(INT_PTR_KIND()) FUNCTION IBuildProject_GetApplication($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_GetApplication
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Application', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 2, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IBuildProject_GetApplication = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IBuildProject_GetApplication
			!Returns the set of configurations in this project
  			!IBuildProject_GetConfigurations return type is POINTER(p, INTEGER(INT_PTR_KIND()))
			INTEGER(INT_PTR_KIND()) FUNCTION IBuildProject_GetConfigurations($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_GetConfigurations
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Configurations', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 100, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IBuildProject_GetConfigurations = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IBuildProject_GetConfigurations
			!Returns the name of the project including its path.
  			CHARACTER*(2048) FUNCTION IBuildProject_GetFullName($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_GetFullName
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'FullName', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 1, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IBuildProject_GetFullName = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IBuildProject_GetFullName
			!Returns the name of the project.
  			CHARACTER*(2048) FUNCTION IBuildProject_GetName($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_GetName
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Name', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 0, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IBuildProject_GetName = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IBuildProject_GetName
			!Returns the Developer Studio Application object
  			INTEGER(INT_PTR_KIND()) FUNCTION IBuildProject_GetParent($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_GetParent
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Parent', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 3, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IBuildProject_GetParent = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IBuildProject_GetParent
			!Returns a string representing the type of the project.
  			CHARACTER*(2048) FUNCTION IBuildProject_GetType($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_GetType
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Type', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 4, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IBuildProject_GetType = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IBuildProject_GetType
  			SUBROUTINE IBuildProject_Reserved1($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_Reserved1
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 50, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_Reserved1
  			SUBROUTINE IBuildProject_Reserved10($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_Reserved10
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 59, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_Reserved10
  			SUBROUTINE IBuildProject_Reserved2($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_Reserved2
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 51, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_Reserved2
  			SUBROUTINE IBuildProject_Reserved3($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_Reserved3
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 52, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_Reserved3
  			SUBROUTINE IBuildProject_Reserved4($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_Reserved4
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 53, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_Reserved4
  			SUBROUTINE IBuildProject_Reserved5($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_Reserved5
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 54, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_Reserved5
  			SUBROUTINE IBuildProject_Reserved6($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_Reserved6
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 55, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_Reserved6
  			SUBROUTINE IBuildProject_Reserved7($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_Reserved7
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 56, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_Reserved7
  			SUBROUTINE IBuildProject_Reserved8($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_Reserved8
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 57, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_Reserved8
  			SUBROUTINE IBuildProject_Reserved9($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IBuildProject_Reserved9
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 58, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IBuildProject_Reserved9
			!Adds a custom build step to this configuration, which is executed after the configuration is built
  			SUBROUTINE IConfiguration_AddCustomBuildStep($OBJECT, szCommand, szOutput, szDescription, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_AddCustomBuildStep
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*), INTENT(IN)	:: szCommand	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szCommand
				CHARACTER*(*), INTENT(IN)	:: szOutput	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szOutput
				CHARACTER*(*), INTENT(IN)	:: szDescription	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szDescription
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szCommand, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szOutput, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG3', szDescription, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG4', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 5, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IConfiguration_AddCustomBuildStep
			!Adds a custom build step to this configuration, which is executed after the configuration is built
  			SUBROUTINE IConfiguration_AddCustomBuildStepToFile($OBJECT, szFile, szCommand, szOutput, szDescription, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_AddCustomBuildStepToFile
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*), INTENT(IN)	:: szFile	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szFile
				CHARACTER*(*), INTENT(IN)	:: szCommand	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szCommand
				CHARACTER*(*), INTENT(IN)	:: szOutput	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szOutput
				CHARACTER*(*), INTENT(IN)	:: szDescription	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szDescription
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szFile, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szCommand, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG3', szOutput, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG4', szDescription, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG5', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 11, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IConfiguration_AddCustomBuildStepToFile
			!Changes the settings of a specified tool, such as the Visual C++ compiler, for all corresponding files in the configuration
  			SUBROUTINE IConfiguration_AddFileSettings($OBJECT, szFile, szSettings, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_AddFileSettings
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*), INTENT(IN)	:: szFile	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szFile
				CHARACTER*(*), INTENT(IN)	:: szSettings	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szSettings
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szFile, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szSettings, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG3', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 9, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IConfiguration_AddFileSettings
			!Changes the settings of a specified tool, such as the Visual C++ compiler, for all corresponding files in the configuration
  			SUBROUTINE IConfiguration_AddToolSettings($OBJECT, szTool, szSettings, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_AddToolSettings
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*), INTENT(IN)	:: szTool	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szTool
				CHARACTER*(*), INTENT(IN)	:: szSettings	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szSettings
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szTool, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szSettings, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG3', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 3, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IConfiguration_AddToolSettings
			!Returns the Developer Studio Application object
  			INTEGER(INT_PTR_KIND()) FUNCTION IConfiguration_GetApplication($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_GetApplication
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Application', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 1, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IConfiguration_GetApplication = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IConfiguration_GetApplication
			!Dependent project configurations collection
  			!IConfiguration_GetConfigurations return type is POINTER(p, INTEGER(INT_PTR_KIND()))
			INTEGER(INT_PTR_KIND()) FUNCTION IConfiguration_GetConfigurations($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_GetConfigurations
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Configurations', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 6, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IConfiguration_GetConfigurations = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IConfiguration_GetConfigurations
			!Returns the name of the configuration as displayed in the FileView
  			CHARACTER*(2048) FUNCTION IConfiguration_GetName($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_GetName
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Name', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 0, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IConfiguration_GetName = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IConfiguration_GetName
			!Returns the project containing this configuration
  			INTEGER(INT_PTR_KIND()) FUNCTION IConfiguration_GetParent($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_GetParent
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Parent', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 2, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IConfiguration_GetParent = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IConfiguration_GetParent
			!Make the current settings of this config the defaults
  			SUBROUTINE IConfiguration_MakeCurrentSettingsDefault($OBJECT, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_MakeCurrentSettingsDefault
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG1', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 8, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IConfiguration_MakeCurrentSettingsDefault
			!Removes settings of a specified tool, such as the Visual C++ compiler, for all corresponding files in the configuration
  			SUBROUTINE IConfiguration_RemoveFileSettings($OBJECT, szFile, szSettings, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_RemoveFileSettings
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*), INTENT(IN)	:: szFile	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szFile
				CHARACTER*(*), INTENT(IN)	:: szSettings	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szSettings
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szFile, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szSettings, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG3', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 10, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IConfiguration_RemoveFileSettings
			!Removes settings of a specified tool, such as the Visual C++ compiler, for all corresponding files in the configuration
  			SUBROUTINE IConfiguration_RemoveToolSettings($OBJECT, szTool, szSettings, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_RemoveToolSettings
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*), INTENT(IN)	:: szTool	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szTool
				CHARACTER*(*), INTENT(IN)	:: szSettings	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szSettings
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szTool, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szSettings, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG3', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 4, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IConfiguration_RemoveToolSettings
			!Reserved
  			SUBROUTINE IConfiguration_Reserved11($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfiguration_Reserved11
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 7, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IConfiguration_Reserved11
  			INTEGER(INT_PTR_KIND()) FUNCTION IConfigurations_Get_NewEnum($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfigurations_Get_NewEnum
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '_NewEnum', $RETURN, AUTO_ARG_OUT, VT_UNKNOWN)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, -4, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IConfigurations_Get_NewEnum = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IConfigurations_Get_NewEnum
			!Returns the Developer Studio Application object
  			INTEGER(INT_PTR_KIND()) FUNCTION IConfigurations_GetApplication($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfigurations_GetApplication
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Application', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 1, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IConfigurations_GetApplication = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IConfigurations_GetApplication
			!Gets the number of configurations in the project
  			INTEGER*4 FUNCTION IConfigurations_GetCount($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfigurations_GetCount
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER*4, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Count', $RETURN, AUTO_ARG_OUT)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 2, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IConfigurations_GetCount = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IConfigurations_GetCount
			!Returns the project containing this configuration
  			!IConfigurations_GetParent return type is POINTER(p, INTEGER(INT_PTR_KIND()))
			INTEGER(INT_PTR_KIND()) FUNCTION IConfigurations_GetParent($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfigurations_GetParent
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Parent', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 4, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IConfigurations_GetParent = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IConfigurations_GetParent
			!Returns a specific configuration by name or index
  			!IConfigurations_Item return type is POINTER(p, INTEGER(INT_PTR_KIND()))
			INTEGER(INT_PTR_KIND()) FUNCTION IConfigurations_Item($OBJECT, Index, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IConfigurations_Item
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				TYPE (VARIANT), INTENT(IN)	:: Index	
				!DEC$ ATTRIBUTES REFERENCE	:: Index
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$RETURN', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				CALL AUTOADDARG(invokeargs, '$ARG1', Index, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 0, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IConfigurations_Item = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IConfigurations_Item
			!Adds a configuration to the project
  			SUBROUTINE IDispBuildProject_AddConfiguration($OBJECT, szConfiguration, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IDispBuildProject_AddConfiguration
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*)	:: szConfiguration	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szConfiguration
				TYPE (VARIANT), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szConfiguration, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG2', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 102, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IDispBuildProject_AddConfiguration
			!Adds a file to the project
  			SUBROUTINE IDispBuildProject_AddFile($OBJECT, szFile, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IDispBuildProject_AddFile
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*)	:: szFile	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szFile
				TYPE (VARIANT), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szFile, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG2', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 101, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IDispBuildProject_AddFile
			!Adds a custom build step to this configuration, which is executed after the configuration is built
  			SUBROUTINE IDispConfiguration_AddCustomBuildStep($OBJECT, szCommand, szOutput, szDescription, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IDispConfiguration_AddCustomBuildStep
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*)	:: szCommand	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szCommand
				CHARACTER*(*)	:: szOutput	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szOutput
				CHARACTER*(*)	:: szDescription	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szDescription
				TYPE (VARIANT), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szCommand, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szOutput, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG3', szDescription, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG4', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 5, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IDispConfiguration_AddCustomBuildStep
			!Adds a custom build step to a file
  			SUBROUTINE IDispConfiguration_AddCustomBuildStepToFile($OBJECT, szFile, szCommand, szOutput, szDescription, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IDispConfiguration_AddCustomBuildStepToFile
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*)	:: szFile	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szFile
				CHARACTER*(*)	:: szCommand	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szCommand
				CHARACTER*(*)	:: szOutput	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szOutput
				CHARACTER*(*)	:: szDescription	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szDescription
				TYPE (VARIANT), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szFile, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szCommand, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG3', szOutput, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG4', szDescription, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG5', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 11, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IDispConfiguration_AddCustomBuildStepToFile
			!Changes the settings for a file in the project
  			SUBROUTINE IDispConfiguration_AddFileSettings($OBJECT, szFile, szSettings, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IDispConfiguration_AddFileSettings
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*)	:: szFile	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szFile
				CHARACTER*(*)	:: szSettings	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szSettings
				TYPE (VARIANT), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szFile, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szSettings, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG3', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 9, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IDispConfiguration_AddFileSettings
			!Changes the settings of a specified tool, such as the Visual C++ compiler, for all corresponding files in the configuration
  			SUBROUTINE IDispConfiguration_AddToolSettings($OBJECT, szTool, szSettings, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IDispConfiguration_AddToolSettings
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*)	:: szTool	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szTool
				CHARACTER*(*)	:: szSettings	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szSettings
				TYPE (VARIANT), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szTool, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szSettings, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG3', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 3, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IDispConfiguration_AddToolSettings
			!Make the current settings of this config the defaults
  			SUBROUTINE IDispConfiguration_MakeCurrentSettingsDefault($OBJECT, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IDispConfiguration_MakeCurrentSettingsDefault
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				TYPE (VARIANT), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG1', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 8, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IDispConfiguration_MakeCurrentSettingsDefault
			!Removes settings for a files in the project
  			SUBROUTINE IDispConfiguration_RemoveFileSettings($OBJECT, szFile, szSettings, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IDispConfiguration_RemoveFileSettings
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*)	:: szFile	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szFile
				CHARACTER*(*)	:: szSettings	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szSettings
				TYPE (VARIANT), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szFile, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szSettings, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG3', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 10, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IDispConfiguration_RemoveFileSettings
			!Removes settings of a specified tool, such as the Visual C++ compiler, for all corresponding files in the configuration
  			SUBROUTINE IDispConfiguration_RemoveToolSettings($OBJECT, szTool, szSettings, Reserved, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IDispConfiguration_RemoveToolSettings
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				CHARACTER*(*)	:: szTool	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szTool
				CHARACTER*(*)	:: szSettings	! BSTR
				!DEC$ ATTRIBUTES REFERENCE	:: szSettings
				TYPE (VARIANT), OPTIONAL	:: Reserved	
				!DEC$ ATTRIBUTES REFERENCE	:: Reserved
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$ARG1', szTool, AUTO_ARG_IN, VT_BSTR)
				CALL AUTOADDARG(invokeargs, '$ARG2', szSettings, AUTO_ARG_IN, VT_BSTR)
				IF (PRESENT(Reserved)) CALL AUTOADDARG(invokeargs, '$ARG3', Reserved, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 4, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IDispConfiguration_RemoveToolSettings
			!Reserved
  			SUBROUTINE IDispConfiguration_Reserved11($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IDispConfiguration_Reserved11
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 7, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IDispConfiguration_Reserved11
			!Returns a specific configuration by name or index
  			INTEGER(INT_PTR_KIND()) FUNCTION IDispConfigurations_Item($OBJECT, Index, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IDispConfigurations_Item
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				TYPE (VARIANT)	:: Index	
				!DEC$ ATTRIBUTES REFERENCE	:: Index
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$RETURN', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				CALL AUTOADDARG(invokeargs, '$ARG1', Index, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 0, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IDispConfigurations_Item = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IDispConfigurations_Item
			!Closes the document.
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericDocument_Close($OBJECT, vSaveChanges, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Close
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: vSaveChanges	
				!DEC$ ATTRIBUTES REFERENCE	:: vSaveChanges
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$RETURN', $RETURN)
				IF (PRESENT(vSaveChanges)) CALL AUTOADDARG(invokeargs, '$ARG1', vSaveChanges, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 16, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_Close = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_Close
			!Returns/sets the active state of the window.
  			LOGICAL*2 FUNCTION IGenericDocument_GetActive($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_GetActive
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				LOGICAL*2, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Active', $RETURN, AUTO_ARG_OUT)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 10, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_GetActive = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_GetActive
			!Returns the active window for this document.
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericDocument_GetActiveWindow($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_GetActiveWindow
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'ActiveWindow', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 6, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_GetActiveWindow = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_GetActiveWindow
			!Returns the Developer Studio Application object
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericDocument_GetApplication($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_GetApplication
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Application', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 2, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_GetApplication = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_GetApplication
			!Returns the name of the document including the path.
  			CHARACTER*(2048) FUNCTION IGenericDocument_GetFullName($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_GetFullName
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'FullName', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 1, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_GetFullName = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_GetFullName
			!Returns the name of the document.
  			CHARACTER*(2048) FUNCTION IGenericDocument_GetName($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_GetName
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Name', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 0, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_GetName = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_GetName
			!Returns the Developer Studio Application object
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericDocument_GetParent($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_GetParent
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Parent', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 3, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_GetParent = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_GetParent
			!Returns the pathname of the document. Never has a trailing backslash.
  			CHARACTER*(2048) FUNCTION IGenericDocument_GetPath($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_GetPath
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Path', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 4, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_GetPath = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_GetPath
			!Returns/sets whether a document can be changed inside Developer Studio.
  			LOGICAL*2 FUNCTION IGenericDocument_GetReadOnly($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_GetReadOnly
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				LOGICAL*2, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'ReadOnly', $RETURN, AUTO_ARG_OUT)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 7, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_GetReadOnly = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_GetReadOnly
			!Returns False if document has changed since it was last saved.
  			LOGICAL*2 FUNCTION IGenericDocument_GetSaved($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_GetSaved
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				LOGICAL*2, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Saved', $RETURN, AUTO_ARG_OUT)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 5, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_GetSaved = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_GetSaved
			!Returns a string describing the type of the document. Most documents return 'Generic'.
  			CHARACTER*(2048) FUNCTION IGenericDocument_GetType($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_GetType
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Type', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 8, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_GetType = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_GetType
			!Returns a Windows collection containing the windows associated with this document.
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericDocument_GetWindows($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_GetWindows
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Windows', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 9, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_GetWindows = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_GetWindows
			!Creates a new window for this document.
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericDocument_NewWindow($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_NewWindow
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$RETURN', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOINVOKE($OBJECT, 11, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_NewWindow = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_NewWindow
			!Sends the document to the current printer. Has no effect on 'Generic' documents.
  			LOGICAL*2 FUNCTION IGenericDocument_PrintOut($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_PrintOut
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				LOGICAL*2, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$RETURN', $RETURN)
				$$STATUS = AUTOINVOKE($OBJECT, 15, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_PrintOut = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_PrintOut
			!Reapplies previous editing actions. Has no effect on 'Generic' documents.
  			LOGICAL*2 FUNCTION IGenericDocument_Redo($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Redo
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				LOGICAL*2, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$RETURN', $RETURN)
				$$STATUS = AUTOINVOKE($OBJECT, 14, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_Redo = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_Redo
  			SUBROUTINE IGenericDocument_Reserved1($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Reserved1
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 50, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_Reserved1
  			SUBROUTINE IGenericDocument_Reserved10($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Reserved10
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 59, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_Reserved10
  			SUBROUTINE IGenericDocument_Reserved2($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Reserved2
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 51, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_Reserved2
  			SUBROUTINE IGenericDocument_Reserved3($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Reserved3
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 52, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_Reserved3
  			SUBROUTINE IGenericDocument_Reserved4($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Reserved4
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 53, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_Reserved4
  			SUBROUTINE IGenericDocument_Reserved5($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Reserved5
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 54, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_Reserved5
  			SUBROUTINE IGenericDocument_Reserved6($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Reserved6
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 55, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_Reserved6
  			SUBROUTINE IGenericDocument_Reserved7($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Reserved7
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 56, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_Reserved7
  			SUBROUTINE IGenericDocument_Reserved8($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Reserved8
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 57, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_Reserved8
  			SUBROUTINE IGenericDocument_Reserved9($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Reserved9
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 58, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_Reserved9
			!Saves the document to disk.
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericDocument_Save($OBJECT, vFilename, vBoolPrompt, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Save
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: vFilename	
				!DEC$ ATTRIBUTES REFERENCE	:: vFilename
				TYPE (VARIANT), INTENT(IN), OPTIONAL	:: vBoolPrompt	
				!DEC$ ATTRIBUTES REFERENCE	:: vBoolPrompt
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$RETURN', $RETURN)
				IF (PRESENT(vFilename)) CALL AUTOADDARG(invokeargs, '$ARG1', vFilename, AUTO_ARG_IN)
				IF (PRESENT(vBoolPrompt)) CALL AUTOADDARG(invokeargs, '$ARG2', vBoolPrompt, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 12, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_Save = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_Save
			!Returns/sets the active state of the window.
  			SUBROUTINE IGenericDocument_SetActive($OBJECT, $ARG1, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_SetActive
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				LOGICAL*2, INTENT(IN)	:: $ARG1	
				!DEC$ ATTRIBUTES REFERENCE	:: $ARG1
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Active', $ARG1)
				$$STATUS = AUTOSETPROPERTYBYID($OBJECT, 10, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_SetActive
			!Returns/sets whether a document can be changed inside Developer Studio.
  			SUBROUTINE IGenericDocument_SetReadOnly($OBJECT, $ARG1, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_SetReadOnly
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				LOGICAL*2, INTENT(IN)	:: $ARG1	
				!DEC$ ATTRIBUTES REFERENCE	:: $ARG1
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'ReadOnly', $ARG1)
				$$STATUS = AUTOSETPROPERTYBYID($OBJECT, 7, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericDocument_SetReadOnly
			!Reverses previous editing actions. Has no effect on 'Generic' documents.
  			LOGICAL*2 FUNCTION IGenericDocument_Undo($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericDocument_Undo
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				LOGICAL*2, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$RETURN', $RETURN)
				$$STATUS = AUTOINVOKE($OBJECT, 13, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericDocument_Undo = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericDocument_Undo
			!Returns the Developer Studio Application object
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericProject_GetApplication($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_GetApplication
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Application', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 2, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericProject_GetApplication = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericProject_GetApplication
			!Returns the name of the project including its path.
  			CHARACTER*(2048) FUNCTION IGenericProject_GetFullName($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_GetFullName
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'FullName', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 1, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericProject_GetFullName = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericProject_GetFullName
			!Returns the name of the project.
  			CHARACTER*(2048) FUNCTION IGenericProject_GetName($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_GetName
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Name', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 0, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericProject_GetName = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericProject_GetName
			!Returns the Developer Studio Application object
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericProject_GetParent($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_GetParent
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Parent', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 3, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericProject_GetParent = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericProject_GetParent
			!Returns a string representing the type of the project.
  			CHARACTER*(2048) FUNCTION IGenericProject_GetType($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_GetType
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Type', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 4, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericProject_GetType = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericProject_GetType
  			SUBROUTINE IGenericProject_Reserved1($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_Reserved1
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 50, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericProject_Reserved1
  			SUBROUTINE IGenericProject_Reserved10($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_Reserved10
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 59, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericProject_Reserved10
  			SUBROUTINE IGenericProject_Reserved2($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_Reserved2
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 51, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericProject_Reserved2
  			SUBROUTINE IGenericProject_Reserved3($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_Reserved3
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 52, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericProject_Reserved3
  			SUBROUTINE IGenericProject_Reserved4($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_Reserved4
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 53, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericProject_Reserved4
  			SUBROUTINE IGenericProject_Reserved5($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_Reserved5
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 54, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericProject_Reserved5
  			SUBROUTINE IGenericProject_Reserved6($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_Reserved6
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 55, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericProject_Reserved6
  			SUBROUTINE IGenericProject_Reserved7($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_Reserved7
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 56, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericProject_Reserved7
  			SUBROUTINE IGenericProject_Reserved8($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_Reserved8
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 57, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericProject_Reserved8
  			SUBROUTINE IGenericProject_Reserved9($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericProject_Reserved9
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 58, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericProject_Reserved9
			!Close the window.
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericWindow_Close($OBJECT, boolSaveChanges, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_Close
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				TYPE (VARIANT), INTENT(IN)	:: boolSaveChanges	
				!DEC$ ATTRIBUTES REFERENCE	:: boolSaveChanges
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, '$RETURN', $RETURN)
				CALL AUTOADDARG(invokeargs, '$ARG1', boolSaveChanges, AUTO_ARG_IN)
				$$STATUS = AUTOINVOKE($OBJECT, 13, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_Close = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_Close
			!Returns/sets the active state of the window.
  			LOGICAL*2 FUNCTION IGenericWindow_GetActive($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetActive
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				LOGICAL*2, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Active', $RETURN, AUTO_ARG_OUT)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 2, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetActive = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetActive
			!Returns the Developer Studio Application object
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericWindow_GetApplication($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetApplication
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Application', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 11, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetApplication = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetApplication
			!Returns the caption of a window.
  			CHARACTER*(2048) FUNCTION IGenericWindow_GetCaption($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetCaption
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Caption', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 0, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetCaption = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetCaption
			!Returns/sets the height of the window.
  			INTEGER*4 FUNCTION IGenericWindow_GetHeight($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetHeight
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER*4, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Height', $RETURN, AUTO_ARG_OUT)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 5, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetHeight = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetHeight
			!Returns the one-based ordinal of a window in the Windows collection.
  			INTEGER*4 FUNCTION IGenericWindow_GetIndex($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetIndex
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER*4, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Index', $RETURN, AUTO_ARG_OUT)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 7, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetIndex = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetIndex
			!Returns/sets the coordinate for the left edge of the window.
  			INTEGER*4 FUNCTION IGenericWindow_GetLeft($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetLeft
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER*4, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Left', $RETURN, AUTO_ARG_OUT)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 3, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetLeft = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetLeft
			!Returns the next window in the tab sequence.
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericWindow_GetNext($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetNext
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Next', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 8, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetNext = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetNext
			!Returns the document associated with this window.
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericWindow_GetParent($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetParent
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Parent', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 12, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetParent = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetParent
			!Returns the previous window in the shift-tab sequence.
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericWindow_GetPrevious($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetPrevious
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Previous', $RETURN, AUTO_ARG_OUT, VT_DISPATCH)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 9, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetPrevious = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetPrevious
			!Returns/sets the coordinate for the top of the window.
  			INTEGER*4 FUNCTION IGenericWindow_GetTop($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetTop
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER*4, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Top', $RETURN, AUTO_ARG_OUT)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 4, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetTop = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetTop
			!Returns a string describing the type of the window. Most windows return 'Generic'.
  			CHARACTER*(2048) FUNCTION IGenericWindow_GetType($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetType
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				CHARACTER*(2048), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Type', $RETURN, AUTO_ARG_OUT, VT_BSTR)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 1, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetType = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetType
			!Returns/sets the width of the window.
  			INTEGER*4 FUNCTION IGenericWindow_GetWidth($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetWidth
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER*4, VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Width', $RETURN, AUTO_ARG_OUT)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 6, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetWidth = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetWidth
			!Returns the state of the window or maximize, minimize, or restore the window.
  			INTEGER(INT_PTR_KIND()) FUNCTION IGenericWindow_GetWindowState($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_GetWindowState
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				INTEGER(INT_PTR_KIND()), VOLATILE :: $RETURN
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'WindowState', $RETURN, AUTO_ARG_OUT)
				$$STATUS = AUTOGETPROPERTYBYID($OBJECT, 10, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				IGenericWindow_GetWindowState = $RETURN
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END FUNCTION IGenericWindow_GetWindowState
  			SUBROUTINE IGenericWindow_Reserved1($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_Reserved1
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 50, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_Reserved1
  			SUBROUTINE IGenericWindow_Reserved10($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_Reserved10
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 59, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_Reserved10
  			SUBROUTINE IGenericWindow_Reserved2($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_Reserved2
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 51, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_Reserved2
  			SUBROUTINE IGenericWindow_Reserved3($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_Reserved3
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 52, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_Reserved3
  			SUBROUTINE IGenericWindow_Reserved4($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_Reserved4
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 53, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_Reserved4
  			SUBROUTINE IGenericWindow_Reserved5($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_Reserved5
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 54, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_Reserved5
  			SUBROUTINE IGenericWindow_Reserved6($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_Reserved6
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 55, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_Reserved6
  			SUBROUTINE IGenericWindow_Reserved7($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_Reserved7
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 56, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_Reserved7
  			SUBROUTINE IGenericWindow_Reserved8($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_Reserved8
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 57, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_Reserved8
  			SUBROUTINE IGenericWindow_Reserved9($OBJECT, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_Reserved9
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				$$STATUS = AUTOINVOKE($OBJECT, 58, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_Reserved9
			!Returns/sets the active state of the window.
  			SUBROUTINE IGenericWindow_SetActive($OBJECT, $ARG1, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_SetActive
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				LOGICAL*2, INTENT(IN)	:: $ARG1	
				!DEC$ ATTRIBUTES REFERENCE	:: $ARG1
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Active', $ARG1)
				$$STATUS = AUTOSETPROPERTYBYID($OBJECT, 2, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_SetActive
			!Returns/sets the height of the window.
  			SUBROUTINE IGenericWindow_SetHeight($OBJECT, $ARG1, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_SetHeight
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(IN)	:: $ARG1	
				!DEC$ ATTRIBUTES REFERENCE	:: $ARG1
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Height', $ARG1)
				$$STATUS = AUTOSETPROPERTYBYID($OBJECT, 5, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_SetHeight
			!Returns/sets the coordinate for the left edge of the window.
  			SUBROUTINE IGenericWindow_SetLeft($OBJECT, $ARG1, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_SetLeft
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(IN)	:: $ARG1	
				!DEC$ ATTRIBUTES REFERENCE	:: $ARG1
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Left', $ARG1)
				$$STATUS = AUTOSETPROPERTYBYID($OBJECT, 3, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_SetLeft
			!Returns/sets the coordinate for the top of the window.
  			SUBROUTINE IGenericWindow_SetTop($OBJECT, $ARG1, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_SetTop
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(IN)	:: $ARG1	
				!DEC$ ATTRIBUTES REFERENCE	:: $ARG1
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Top', $ARG1)
				$$STATUS = AUTOSETPROPERTYBYID($OBJECT, 4, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_SetTop
			!Returns/sets the width of the window.
  			SUBROUTINE IGenericWindow_SetWidth($OBJECT, $ARG1, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_SetWidth
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER*4, INTENT(IN)	:: $ARG1	
				!DEC$ ATTRIBUTES REFERENCE	:: $ARG1
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'Width', $ARG1)
				$$STATUS = AUTOSETPROPERTYBYID($OBJECT, 6, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_SetWidth
			!Returns the state of the window or maximize, minimize, or restore the window.
  			SUBROUTINE IGenericWindow_SetWindowState($OBJECT, $ARG1, $STATUS)
				!DEC$ ATTRIBUTES DLLEXPORT	:: IGenericWindow_SetWindowState
				IMPLICIT NONE
	
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $OBJECT	 ! Object Pointer
				!DEC$ ATTRIBUTES VALUE	:: $OBJECT
				INTEGER(INT_PTR_KIND()), INTENT(IN)	:: $ARG1	! Void
				!DEC$ ATTRIBUTES REFERENCE	:: $ARG1
				INTEGER*4, INTENT(OUT), OPTIONAL	:: $STATUS	 ! Method status
				!DEC$ ATTRIBUTES REFERENCE			:: $STATUS
				INTEGER*4 $$STATUS
				INTEGER(INT_PTR_KIND()) invokeargs
				invokeargs = AUTOALLOCATEINVOKEARGS()
				CALL AUTOADDARG(invokeargs, 'WindowState', $ARG1)
				$$STATUS = AUTOSETPROPERTYBYID($OBJECT, 10, invokeargs)
				IF (PRESENT($STATUS)) $STATUS = $$STATUS
				CALL AUTODEALLOCATEINVOKEARGS (invokeargs)
			END SUBROUTINE IGenericWindow_SetWindowState
	END MODULE
