-----------------------------------

Acquista i software ArcGIS tramite Studio A&T srl, rivenditore autorizzato dei prodotti Esri.

I migliori software GIS, il miglior supporto tecnico!

I migliori software GIS, il miglior supporto tecnico!
Azienda operante nel settore GIS dal 2001, specializzata nell’utilizzo della tecnologia ArcGIS e aderente ai programmi Esri Italia Business Network ed Esri Partner Network

-----------------------------------



venerdì 7 novembre 2008

ProgIDFromCLSID

using System;
using System.Runtime.InteropServices;
using ESRI.ArcGIS.Server;


public static class AOFactory <T>
{
        public static T CreateObject(IServerContext SC, object ArcObject)
        {
            string progId = string.Empty;

            try
            {
                Type t = ArcObject.GetType();
                Guid guid = t.GUID;

                progId = Win32API.ProgIDFromCLSID(ref guid);
            }
            catch { }

            if (!string.IsNullOrEmpty(progId))
                return (T)SC.CreateObject(progId);
            else
                return default(T);
        }

}



public static class Win32API
{
       [DllImport("ole32.dll", CharSet = CharSet.Unicode, PreserveSig = false)]
        public static extern string ProgIDFromCLSID([In()]ref Guid clsid);
}


Sample:

ESRI.ArcGIS.Geometry.IPoint aoPoint = AOFactory<Geometry.IPoint>.CreateObject(sc, new ESRI.ArcGIS.Geometry.PointClass());




Qui puoi scaricare il codice

Nessun commento: