Not sure if I found a bug or doing something wrong. I have a map in Decimal Degree and am adding a shape file with a .prj file of:
PROJCS["NAD_1983_HARN_StatePlane_Florida_West_FIPS_0902_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-82.0],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Foot_US",0.3048006096012192]]
I go to spatialreference.org and see the ESRI# is 102659. I also look in ESRI.rtf and assume the number is supported since the following data is in the file:
# NAD 1983 StatePlane Florida West FIPS 0902 Feet
<102659> +proj=tmerc +lat_0=24.33333333333333 +lon_0=-82 +k=0.999941 +x_0=200000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <>
So I assume the following code will work:
Dim proj4 As ManagedProj4Projection = New ManagedProj4Projection()
proj4.InternalProjectionParametersString = Proj4Projection.GetEsriParametersString(102659) 'this does not work
proj4.ExternalProjectionParametersString = Proj4Projection.GetWgs84ParametersString()
but nothing displays. If I change it to put the projection string in directly it displays:
Dim proj4 As ManagedProj4Projection = New ManagedProj4Projection()
proj4.InternalProjectionParametersString = "+proj=tmerc +lat_0=24.33333333333333 +lon_0=-82 +k=0.999941 +x_0=200000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs"
proj4.ExternalProjectionParametersString = Proj4Projection.GetWgs84ParametersString()
You can download a sample project here that demonstrates this: stormctr.com/files/ThinkGeoShapefileSample.zip