示例#1
0
        public static TInterfaceType GetService <TInterfaceType>(string contractID)
        {
            Guid iid = multiversion <TInterfaceType> .ActualType.GUID;
            var  obj = ServiceManager.GetServiceByContractID(contractID, ref iid);

            return(multiversion <TInterfaceType> .Cast(obj));
        }
示例#2
0
        public static TInterfaceType GetService <TInterfaceType>(string contractID)
        {
            Guid   iid = typeof(TInterfaceType).GUID;
            IntPtr ptr = ServiceManager.GetServiceByContractID(contractID, ref iid);

            return((TInterfaceType)Marshal.GetObjectForIUnknown(ptr));
        }
示例#3
0
文件: Xpcom.cs 项目: Arsslensoft/ALFX
        //public static object GetService(string contractID)
        //{
        //    return GetService<nsISupports>(contractID);
        //}

        public static TInterfaceType GetService <TInterfaceType>(string contractID)
        {
            AssertCorrectThread();

            Guid   iid = typeof(TInterfaceType).GUID;
            IntPtr ptr = ServiceManager.GetServiceByContractID(contractID, ref iid);

            return((TInterfaceType)Xpcom.GetObjectForIUnknown(ptr));
        }
        public static TInterfaceType GetService <TInterfaceType>(string contractID)
        {
            Guid iid = typeof(TInterfaceType).GUID;

            return((TInterfaceType)ServiceManager.GetServiceByContractID(contractID, ref iid));
        }