Beispiel #1
0
        public IExtendTypes[] GetExtendTypes()
        {
            lock (mExtendTypes.SyncRoot)
            {
                IExtendTypes[] result = new IExtendTypes[mExtendTypes.Count];

                mExtendTypes.Values.CopyTo(result, 0);

                return(result);
            }
        }
Beispiel #2
0
 public void Remove(string filename)
 {
     lock (mExtendTypes.SyncRoot)
     {
         IExtendTypes extTypes = mExtendTypes[filename] as IExtendTypes;
         if (extTypes != null)
         {
             extTypes.Dispose();
         }
         mExtendTypes.Remove(filename);
     }
 }
Beispiel #3
0
        public void InitExtendTypes(string path)
        {
            if (!path.Equals("") && Directory.Exists(path))
            {
                string[] files = Directory.GetFiles(path, "*.dll");
                if (files != null && files.Length > 0)
                {
                    IExtendTypes extTypes = null;

                    lock (mExtendTypes.SyncRoot)
                    {
                        foreach (string filename in files)
                        {
                            if (!mExtendTypes.ContainsKey(filename))
                            {
                                extTypes = new CExtendTypes(mSystemContext, filename, true, 0);
                                mExtendTypes.Add(extTypes.FileName, extTypes);
                            }
                        }
                    }
                }
            }
        }