It's VB.Net, but this works for me in VS. It does not include the ControlPrecision setting nor setting the tolerance and resolution values. The other thread references a very old help topic. A more up-to-date one is here: Creating a Custom Projected Coordinate System Another thread using C#: http://forums.esri.com/Thread.asp?c=93&f=1170&t=124093&mc=11#826802It's older, and I haven't tested that version for a while. Here's one that worked for me. Dim pSR As ISpatialReference3
pSR = Nothing
Dim t As Type = Type.GetTypeFromProgID("esriGeometry.SpatialReferenceEnvironment")
Dim obj As System.Object = Activator.CreateInstance(t)
Dim pSRF As ESRI.ArcGIS.Geometry.ISpatialReferenceFactory3 = obj
' Create a projection, GeographicCoordinateSystem, and unit using the factory.
Dim projection As IProjectionGEN = TryCast(pSRF.CreateProjection(CInt(esriSRProjectionType.esriSRProjection_Sinusoidal)), IProjectionGEN)
Dim geographicCoordinateSystem As IGeographicCoordinateSystem = pSRF.CreateGeographicCoordinateSystem(CInt(esriSRGeoCSType.esriSRGeoCS_WGS1984))
Dim unit As ILinearUnit = TryCast(pSRF.CreateUnit(CInt(esriSRUnitType.esriSRUnit_Meter)), ILinearUnit)
' Get the default parameters from the projection.
Dim parameters As IParameter() = projection.GetDefaultParameters()
' Create a PCS using the Define method.
Dim projectedCoordinateSystemEdit As IProjectedCoordinateSystemEdit = New ProjectedCoordinateSystemClass()
Dim Name As Object = "Newfoundland"
Dim [Alias] As Object = "NF_LAB"
Dim abbreviation As Object = "NF"
Dim remarks As Object = "Most Eastern Province in Canada"
Dim usage As Object = "When making maps of Newfoundland"
Dim geographicCoordinateSystemObject As Object = TryCast(geographicCoordinateSystem, Object)
Dim unitObject As Object = TryCast(unit, Object)
Dim projectionObject As Object = TryCast(projection, Object)
Dim parametersObject As Object = TryCast(parameters, Object)
' Note: Alias is a reserved keyword in VB .NET. To use it as a variable name, encase it in brackets [ ].
projectedCoordinateSystemEdit.Define(Name, [Alias], abbreviation, remarks, usage, geographicCoordinateSystemObject, unitObject, projectionObject, parametersObject)
pSR = projectedCoordinateSystemEdit
Melita