做COM+时用到的一些方法

//获取CPU的序列号
        private string GetCpuID()
        {
            try
            {
                //获取CPU序列号代码
                string cpuInfo = "";//cpu序列号
                ManagementClass mc = new ManagementClass("Win32_Processor");
                ManagementObjectCollection moc = mc.GetInstances();
                foreach (ManagementObject mo in moc)
                {
                    cpuInfo = mo.Properties["ProcessorId"].Value.ToString();
                }
                moc = null;
                mc = null;
                return cpuInfo;
            }
            catch
            {
                return "unknow";
            }
            finally
            {
            }
        }
//检索所有正在运行的COM+组件,和它们的应用程序ID
public void GetCOMPlusApplicationsList()
  {
   COMSVCSLib.MtsGrp GrpObj = null;
   Type dcomType = Type.GetTypeFromProgID("mts.MtsGrp");
   Object dcomObj = Activator.CreateInstance( dcomType );
   GrpObj = (COMSVCSLib.MtsGrp) dcomObj;
   object obj = null;
   COMSVCSLib.COMEvents eventObj = null;
   
   for (int i = 0 ;i < GrpObj.Count ; ++i)
   {
    GrpObj.Item (i, out obj);
    eventObj = (COMSVCSLib.COMEvents) obj;
    
    AddtoListView(eventObj.GetProcessID(),eventObj.PackageName);
    Marshal.ReleaseComObject(obj);
    obj = null;
    Marshal.ReleaseComObject(eventObj);
    eventObj = null;
   }
   Marshal.ReleaseComObject( dcomObj );
   dcomObj = null;
   return;
  }


/**/
        /// <summary>
        /// 性能计数器,用于获取CPU空闲百分比
        /// </summary>
        private static PerformanceCounter mIdle = new PerformanceCounter("Processor", "% Processor Time", "Idle");
        private Label label1;
        /**/
        /// <summary>
        /// 性能计数器,用于获取CPU总利用率
        /// </summary>
        private static PerformanceCounter mTotal = new PerformanceCounter("Processor", "% Processor Time", "_Total");
 string  nVal = mTotal.NextValue().ToString();
 //PerformanceCounter cpuCounter;
            //PerformanceCounter ramCounter;

            //cpuCounter = new PerformanceCounter();

            //cpuCounter.CategoryName = "Processor";
            //cpuCounter.CounterName = "% Processor Time";
            //cpuCounter.InstanceName = "_Total";
            //ramCounter = new PerformanceCounter("Memory", "Available MBytes");


//当前程序的路径
System.AppDomain.CurrentDomain.BaseDirectory.ToString();


//保存文件

SaveFileDialog sf = new SaveFileDialog();
            //设置文件保存类型
            sf.Filter = "txt文件|*.txt|所有文件|*.*";
            //如果用户没有输入扩展名,自动追加后缀
            sf.AddExtension = true;
            //设置标题
            sf.Title = "写文件";
            //如果用户点击了保存按钮
            if (sf.ShowDialog() == DialogResult.OK)
            {
                this.txtFilePath.Text = sf.FileName;
            }
System.IO.StreamWriter f2 = new System.IO.StreamWriter(path, true, System.Text.Encoding.UTF8);
                f2.WriteLine(txtStrings);

转载于:https://www.cnblogs.com/flora_asp_net/archive/2009/12/17/1626111.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值