Beispiel #1
0
        static public String GetMethodDescription(String methName, ISWbemObject curObj)
        {
            try
            {
                ISWbemQualifier descrQual   = null;
                ISWbemMethod    verboseMeth = null;

                if (!curObj.Path_.IsClass)
                {
                    ISWbemObject classObj = WmiHelper.GetClassObject(curObj);
                    verboseMeth = classObj.Methods_.Item(methName, 0);
                }
                else
                {
                    verboseMeth = curObj.Methods_.Item(methName, 0);
                }

                descrQual = verboseMeth.Qualifiers_.Item("Description", 0);

                return(descrQual.get_Value().ToString());
            }
            catch (Exception)
            {
                //2880: removed message here
                return("");
            }
        }
Beispiel #2
0
        /// <summary>
        /// CheckMethodBoolQualifier
        /// </summary>
        /// <param name="meth"> </param>
        /// <param name="qualName"> </param>
        static private bool CheckMethodBoolQualifier(ISWbemMethod meth, String qualName)
        {
            try
            {
                ISWbemQualifierSet qualSet = meth.Qualifiers_;
                ISWbemQualifier    qual    = (ISWbemQualifier)qualSet.Item(qualName, 0);

                return(Convert.ToBoolean(qual.get_Value()));
            }
            catch (Exception)
            {
                //NOTE that if the qualifier is not present, "Not found" will be returned
                //Return false in this case
                return(false);
            }
        }
Beispiel #3
0
 /// <summary>
 /// IsImplementedMethod
 /// </summary>
 /// <param name="meth"> </param>
 static public bool IsImplementedMethod(ISWbemMethod meth)
 {
     return(CheckMethodBoolQualifier(meth, "Implemented"));
 }
Beispiel #4
0
 /// <summary>
 /// IsStaticMethod
 /// </summary>
 /// <param name="meth"> </param>
 static public bool IsStaticMethod(ISWbemMethod meth)
 {
     return(CheckMethodBoolQualifier(meth, "Static"));
 }
Beispiel #5
0
        public ExecuteMethodDialog(ISWbemObject wbemObjIn,
                                   ISWbemMethod methIn,
                                   ISWbemObject wbemClassObjIn)
        {
            try
            {
                if (wbemObjIn == null || methIn == null)
                {
                    throw (new NullReferenceException());
                }

                wmiObj      = wbemObjIn;
                wmiClassObj = wbemClassObjIn;
                meth        = methIn;

                this.Text = WMISys.GetString("WMISE_ExecMethodDlg_Title", wmiObj.Path_.Class, meth.Name);

                //this is a temp workaround for URT bug 48695: uncomment this later
                //this.AcceptButton = executeBtn;

                this.AutoScaleBaseSize = (Size) new Point(5, 13);
                this.BorderStyle       = FormBorderStyle.FixedSingle;
                int dlgWidth  = 400;
                int dlgHeight = 500;
                this.ClientSize    = (Size) new Point(dlgWidth, dlgHeight);
                this.ShowInTaskbar = false;

                ServerName.Location = new Point(16, 16);
                ServerName.Text     = WMISys.GetString("WMISE_ExecMethodDlg_ServerName", wmiObj.Path_.Server);

                //NamespaceName.Location = new Point();
                //ClassName.Location = new Point();

                if (meth.InParameters == null)
                {
                    NoInParams.Text     = WMISys.GetString("WMISE_ExecMethodDlg_NoInputParams");
                    NoInParams.Location = new Point(16, 40);
                }
                else
                {
                    inParms = meth.InParameters.SpawnInstance_(0);
                    gridIn  = new WMIObjectGrid(inParms,
                                                PropertyFilters.NoSystem,
                                                GridMode.EditMode,
                                                false, false, false);

                    labelInParms.Location = new Point(16, 40);
                    labelInParms.Text     = WMISys.GetString("WMISE_ExecMethodDlg_InputParameters");

                    gridIn.Location             = new Point(16, 65);
                    gridIn.Size                 = (Size) new Point(367, 140);
                    gridIn.Anchor               = AnchorStyles.All;
                    gridIn.PreferredColumnWidth = 109;
                    gridIn.PreferredRowHeight   = 19;
                    gridIn.TabIndex             = 1;
                }

                labelOutParms.Location = new Point(16, 215);
                labelOutParms.Text     = WMISys.GetString("WMISE_ExecMethodDlg_OutputParameters");

                gridOut = new WMIObjectGrid(meth.OutParameters,
                                            PropertyFilters.NoSystem,
                                            GridMode.ViewMode,
                                            false, false, false);

                gridOut.Location             = new Point(16, 240);
                gridOut.Size                 = (Size) new Point(367, 100);
                gridOut.Anchor               = AnchorStyles.All;
                gridOut.PreferredColumnWidth = 109;
                gridOut.PreferredRowHeight   = 19;
                gridOut.TabIndex             = 2;

                descr.Text       = WmiHelper.GetMethodDescription(meth.Name, wmiClassObj);
                descr.Location   = new Point(16, 355);
                descr.Size       = (Size) new Point(368, 70);
                descr.Multiline  = true;
                descr.ReadOnly   = true;
                descr.ScrollBars = ScrollBars.Vertical;

                executeBtn.Text     = WMISys.GetString("WMISE_ExecMethodDlg_Execute");
                executeBtn.Location = new Point(225, 440);
                executeBtn.Click   += new EventHandler(this.OnExecute);
                executeBtn.TabIndex = 3;

                cancelBtn.Text         = WMISys.GetString("WMISE_Cancel");
                cancelBtn.Location     = new Point(310, 440);
                cancelBtn.DialogResult = DialogResult.Cancel;
                cancelBtn.TabIndex     = 4;

                if (meth.InParameters == null)
                {
                    this.Controls.All = new Control[] { cancelBtn,
                                                        executeBtn,
                                                        ServerName,
                                                        NoInParams,
                                                        labelOutParms,
                                                        gridOut,
                                                        descr };
                }
                else
                {
                    this.Controls.All = new Control[] { cancelBtn,
                                                        executeBtn,
                                                        ServerName,
                                                        labelInParms,
                                                        gridIn,
                                                        labelOutParms,
                                                        gridOut,
                                                        descr };
                }
            }

            catch (Exception exc)
            {
                MessageBox.Show(WMISys.GetString("WMISE_Exception", exc.Message, exc.StackTrace));
                throw (exc);
            }
        }