/// <summary> /// Get the total ram available /// </summary> /// <returns></returns> public static string GetTotalRAM() { double ram = 0; try { System.Management.ObjectQuery myQuery = new System.Management.ObjectQuery("SELECT * FROM Win32_PhysicalMemory"); System.Management.ManagementObjectSearcher mySearcher = new System.Management.ManagementObjectSearcher(myQuery); foreach (System.Management.ManagementObject myObject in mySearcher.Get()) { ram += ConvertUtil.cDbl(myObject["Capacity"].ToString()); } if (ram == 0) { return("Unknown RAM"); } else { return(Convert.ToString(ram / MEM_MB) + " MB"); } } catch { return("Unknown RAM"); } }
public static Size GetMaximumScreenSizePrimary() { var scope = new System.Management.ManagementScope(); var q = new System.Management.ObjectQuery("SELECT * FROM CIM_VideoControllerResolution"); UInt32 maxHResolution; UInt32 maxVResolution; using (var searcher = new System.Management.ManagementObjectSearcher(scope, q)) { var results = searcher.Get(); maxHResolution = 0; maxVResolution = 0; foreach (var item in results) { if ((UInt32)item["HorizontalResolution"] > maxHResolution) maxHResolution = (UInt32)item["HorizontalResolution"]; if ((UInt32)item["VerticalResolution"] > maxVResolution) maxVResolution = (UInt32)item["VerticalResolution"]; } } return new Size((int)maxHResolution, (int)maxVResolution); }
private static List <string> GetAllPrintersInternal(int failCounter) { try { List <string> printers = new List <string>(); string selectAllQuery = "SELECT * FROM Win32_Printer"; System.Management.ObjectQuery oq = new System.Management.ObjectQuery(selectAllQuery); System.Management.ManagementObjectSearcher query1 = new System.Management.ManagementObjectSearcher(oq); System.Management.ManagementObjectCollection queryCollection1 = query1.Get(); foreach (System.Management.ManagementObject mo in queryCollection1) { System.Management.PropertyDataCollection pdc = mo.Properties; printers.Add(mo["Name"].ToString()); } return(printers); } catch { if (failCounter > 3) { throw; } Thread.Sleep(new TimeSpan(0, 0, 5)); return(GetAllPrintersInternal(++failCounter)); } }
internal static byte[] GetDmi() { var scope = new System.Management.ManagementScope("\\\\" + "." + "\\root\\WMI"); scope.Connect(); var wmiquery = new System.Management.ObjectQuery("SELECT * FROM MSSmBios_RawSMBiosTables"); var searcher = new System.Management.ManagementObjectSearcher(scope, wmiquery); var coll = searcher.Get(); var M_ByMajorVersion = 0; var M_ByMinorVersion = 0; byte[] data = null; foreach (var O in coll) { var queryObj = (System.Management.ManagementObject)O; if (queryObj["SMBiosData"] != null) { data = (byte[])(queryObj["SMBiosData"]); } if (queryObj["SmbiosMajorVersion"] != null) { M_ByMajorVersion = (byte)(queryObj["SmbiosMajorVersion"]); } if (queryObj["SmbiosMinorVersion"] != null) { M_ByMinorVersion = (byte)(queryObj["SmbiosMinorVersion"]); } //if (queryObj["Size"] != null) m_dwLen = (long)(queryObj["Size"]); //m_dwLen = m_pbBIOSData.Length; } Version = (ushort)(M_ByMajorVersion << 8 | M_ByMinorVersion); return(data); }
private static List<string> GetAllPrintersInternal(int failCounter) { try { List<string> printers = new List<string>(); string selectAllQuery = "SELECT * FROM Win32_Printer"; System.Management.ObjectQuery oq = new System.Management.ObjectQuery(selectAllQuery); System.Management.ManagementObjectSearcher query1 = new System.Management.ManagementObjectSearcher(oq); System.Management.ManagementObjectCollection queryCollection1 = query1.Get(); foreach (System.Management.ManagementObject mo in queryCollection1) { System.Management.PropertyDataCollection pdc = mo.Properties; printers.Add(mo["Name"].ToString()); } return printers; } catch { if (failCounter > 3) throw; Thread.Sleep(new TimeSpan(0, 0, 5)); return GetAllPrintersInternal(++failCounter); } }
/// <summary> /// Returns the total available system memory. Uses the System.Managment interface so only available when run in Windows. /// Will return double.maxValue if error or non windows environment. /// </summary> /// <returns></returns> public static double AvailableSystemMemoryMB() { if (Type.GetType("Mono.Runtime") == null) { try { System.Management.ObjectQuery wql = new System.Management.ObjectQuery("SELECT * FROM Win32_OperatingSystem"); System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(wql); System.Management.ManagementObjectCollection results = searcher.Get(); double total = 0; foreach (System.Management.ManagementObject result in results) { ulong?value = result["FreePhysicalMemory"] as ulong?; if (value != null) { total += (ulong)value; } } return(total / 1024.0); } catch (Exception) { return(double.MaxValue); } } else { return(double.MaxValue); } }
static AndroidUsbDriverHelper( ) { try { System.Management.ManagementClass wmi = new System.Management.ManagementClass ( ); System.Management.ObjectQuery oQuery = new System.Management.ObjectQuery ( QUERY ); System.Management.ManagementScope oMs = new System.Management.ManagementScope ( ); System.Management.ManagementObjectSearcher oSearcher = new System.Management.ManagementObjectSearcher ( oMs, oQuery ); System.Management.ManagementObjectCollection oResults = oSearcher.Get ( ); if ( oResults.Count == 1 ) { foreach ( var item in oResults ) { string dv = string.Format ( CultureInfo.InvariantCulture, "{0}", item["DriverVersion"] ); if ( !string.IsNullOrEmpty ( dv ) ) { DriverVersion = new Version ( dv ); } else { // default DriverVersion = new Version ( "0.0.0.0" ); } string cg = string.Format ( CultureInfo.InvariantCulture, "{0}", item["ClassGuid"] ); if ( !string.IsNullOrEmpty ( cg ) ) { IsRevision2Driver = string.Compare ( cg, DRIVER_CLASS_GUID_REVISION2, true ) == 0; IsRevision1Driver = !IsRevision2Driver; } else { // default to cupcake IsRevision1Driver = true; IsRevision2Driver = false; } } } } catch ( Exception ex ) { Logger.LogError ( typeof ( AndroidUsbDriverHelper ), ex.Message, ex ); DriverVersion = new Version ( "0.0.0.0" ); } }
} // End Function AddUserToLocalGroup public static string GetProcessInfoByPID(int PID, out string User, out string Domain) { User = string.Empty; Domain = string.Empty; string OwnerSID = string.Empty; string processname = string.Empty; try { System.Management.ObjectQuery sq = new System.Management.ObjectQuery(@" SELECT * FROM Win32_Process WHERE ProcessID = '" + PID + @"' "); System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(sq); if (searcher.Get().Count == 0) { return(OwnerSID); } foreach (System.Management.ManagementObject oReturn in searcher.Get()) { // Invoke the method and populate the o array with the user name and domain string[] o = new string[2]; oReturn.InvokeMethod("GetOwner", (object[])o); // int pid = (int)oReturn["ProcessID"]; processname = (string)oReturn["Name"]; // dr[2] = oReturn["Description"]; User = o[0]; if (User == null) { User = string.Empty; } Domain = o[1]; if (Domain == null) { Domain = string.Empty; } string[] sid = new string[1]; oReturn.InvokeMethod("GetOwnerSid", (object[])sid); OwnerSID = sid[0]; return(OwnerSID); } // Next oReturn } // End Try catch { return(OwnerSID); } // End Catch return(OwnerSID); } // End Function GetProcessInfoByPID
public static ActionResult GetAndroidUsbDriverVersionWmi(Session session) { session.Log("(DECA) Begin GetAndroidUsbDriverVersionWmi"); try { System.Management.ManagementClass wmi = new System.Management.ManagementClass( ); System.Management.ObjectQuery oQuery = new System.Management.ObjectQuery(string.Format(CultureInfo.InvariantCulture, WMI_QUERY, REVISION2_GUID)); System.Management.ManagementScope oMs = new System.Management.ManagementScope( ); System.Management.ManagementObjectSearcher oSearcher = new System.Management.ManagementObjectSearcher(oMs, oQuery); System.Management.ManagementObjectCollection oResults = oSearcher.Get( ); if (oResults.Count > 0) { foreach (var item in oResults) { string cg = string.Format(CultureInfo.InvariantCulture, "{0}", item["ClassGuid"]); if (!string.IsNullOrEmpty(cg)) { bool foundR1 = string.Compare(cg, REVISION1_GUID, true) == 0; bool foundR2 = string.Compare(cg, REVISION2_GUID, true) == 0; if (foundR1) { session[ANDROIDUSBDRIVERVERSION] = REVISION1; session[ANDROIDUSBDRIVERSINSTALLED] = "1"; session.Log("(DECA) Found Revision 1 version of Android USB Driver"); return(ActionResult.Success); } else if (foundR2) { session[ANDROIDUSBDRIVERVERSION] = REVISION2; session[ANDROIDUSBDRIVERSINSTALLED] = "0"; session.Log("(DECA) Found Revision 2 version of Android USB Driver"); return(ActionResult.Success); } else { session.Log("(DECA) Did not find a know ClassGuid: {0}", cg); } } else { session.Log("(DECA) ClassGuid was Empty"); } } } else { session.Log("(DECA) No WMI Results were returned."); } } catch (Exception ex) { session.Log(ex.ToString()); } session[ANDROIDUSBDRIVERVERSION] = "0"; session[ANDROIDUSBDRIVERSINSTALLED] = "0"; session.Log("(DECA) Did not find any version of Android USB Driver"); return(ActionResult.Success); }
public static System.Collections.Generic.List<System.Management.ManagementObject> PerformQuery(string Query) { System.Collections.Generic.List<System.Management.ManagementObject> list = new List<System.Management.ManagementObject>(); try { System.Management.ManagementObjectSearcher searcher; System.Management.ObjectQuery query = new System.Management.ObjectQuery(Query); searcher = new System.Management.ManagementObjectSearcher(query); foreach (System.Management.ManagementObject obj in searcher.Get()) { list.Add(obj); } } catch (Exception) { } return list; }
/// <summary> /// Looks for the resolution 5760 x 1080. If the resolution is available, stereo mode is available. /// (Looking for the max resolution didn't work because it returned 5760 x 1200.) /// </summary> /// <returns></returns> public static void PrintResolutions() { var scope = new System.Management.ManagementScope(); var q = new System.Management.ObjectQuery("SELECT * FROM CIM_VideoControllerResolution"); using(var searcher = new System.Management.ManagementObjectSearcher(scope, q)) { var results = searcher.Get(); foreach(var item in results) { Console.WriteLine((UInt32)item["HorizontalResolution"] + " x " + (UInt32)item["VerticalResolution"]); } } }
public static System.Collections.Generic.List <System.Management.ManagementObject> PerformQuery(string Query) { System.Collections.Generic.List <System.Management.ManagementObject> list = new List <System.Management.ManagementObject>(); try { System.Management.ManagementObjectSearcher searcher; System.Management.ObjectQuery query = new System.Management.ObjectQuery(Query); searcher = new System.Management.ManagementObjectSearcher(query); foreach (System.Management.ManagementObject obj in searcher.Get()) { list.Add(obj); } } catch (Exception) { } return(list); }
public static List<Adapter> GetAdapters() { List<Adapter> adapterList = new List<Adapter>(); string query = "SELECT * FROM Win32_NetworkAdapterConfiguration"; System.Management.ManagementObjectSearcher searcher; System.Management.ObjectQuery q = new System.Management.ObjectQuery(query); searcher = new System.Management.ManagementObjectSearcher(q); foreach(System.Management.ManagementObject share in searcher.Get()) { Adapter ad = new Adapter(); ad.PropertyData = share; adapterList.Add(ad); } return adapterList; }
public static string Detect3264() { System.Management.ConnectionOptions oConn = new System.Management.ConnectionOptions(); System.Management.ManagementScope oMs = new System.Management.ManagementScope("\\\\localhost", oConn); System.Management.ObjectQuery oQuery = new System.Management.ObjectQuery("select AddressWidth from Win32_Processor"); System.Management.ManagementObjectSearcher oSearcher = new System.Management.ManagementObjectSearcher(oMs, oQuery); System.Management.ManagementObjectCollection oReturnCollection = oSearcher.Get(); string addressWidth = null; foreach (System.Management.ManagementObject oReturn in oReturnCollection) { addressWidth = oReturn["AddressWidth"].ToString(); } return addressWidth; }
public static List <Adapter> GetAdapters() { List <Adapter> adapterList = new List <Adapter>(); string query = "SELECT * FROM Win32_NetworkAdapterConfiguration"; System.Management.ManagementObjectSearcher searcher; System.Management.ObjectQuery q = new System.Management.ObjectQuery(query); searcher = new System.Management.ManagementObjectSearcher(q); foreach (System.Management.ManagementObject share in searcher.Get()) { Adapter ad = new Adapter(); ad.PropertyData = share; adapterList.Add(ad); } return(adapterList); }
/// <summary> /// Looks for the resolution 5760 x 1080. If the resolution is available, stereo mode is available. /// (Looking for the max resolution didn't work because it returned 5760 x 1200.) /// </summary> /// <returns></returns> public static bool IsStereoAvailable() { bool isStereoModeAvailable = false; var scope = new System.Management.ManagementScope(); var q = new System.Management.ObjectQuery("SELECT * FROM CIM_VideoControllerResolution"); using(var searcher = new System.Management.ManagementObjectSearcher(scope, q)) { var results = searcher.Get(); foreach(var item in results) { if((UInt32)item["HorizontalResolution"] == 5760 && (UInt32)item["VerticalResolution"] == 1080) isStereoModeAvailable = true; } } return isStereoModeAvailable; }
private static string GetUserSIDByProcessID(int processID) { System.Management.ObjectQuery sq = new System.Management.ObjectQuery(string.Format("Select * from Win32_Process Where ProcessID = '{0}'", processID)); System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(sq); if (searcher.Get().Count == 0) { return(string.Empty); } else { foreach (System.Management.ManagementObject searchResult in searcher.Get()) { string[] sid = new String[1]; searchResult.InvokeMethod("GetOwnerSid", (object[])sid); return(sid[0]); } return(string.Empty); } }
static AndroidUsbDriverHelper( ) { try { System.Management.ManagementClass wmi = new System.Management.ManagementClass( ); System.Management.ObjectQuery oQuery = new System.Management.ObjectQuery(QUERY); System.Management.ManagementScope oMs = new System.Management.ManagementScope( ); System.Management.ManagementObjectSearcher oSearcher = new System.Management.ManagementObjectSearcher(oMs, oQuery); System.Management.ManagementObjectCollection oResults = oSearcher.Get( ); if (oResults.Count == 1) { foreach (var item in oResults) { string dv = string.Format(CultureInfo.InvariantCulture, "{0}", item["DriverVersion"]); if (!string.IsNullOrEmpty(dv)) { DriverVersion = new Version(dv); } else { // default DriverVersion = new Version("0.0.0.0"); } string cg = string.Format(CultureInfo.InvariantCulture, "{0}", item["ClassGuid"]); if (!string.IsNullOrEmpty(cg)) { IsRevision2Driver = string.Compare(cg, DRIVER_CLASS_GUID_REVISION2, true) == 0; IsRevision1Driver = !IsRevision2Driver; } else { // default to cupcake IsRevision1Driver = true; IsRevision2Driver = false; } } } } catch (Exception ex) { Logger.LogError(typeof(AndroidUsbDriverHelper), ex.Message, ex); DriverVersion = new Version("0.0.0.0"); } }
/// <summary> /// Get the service pack installed on the current computer /// This WMI procedure works for Windows 2000 and above /// </summary> /// <returns></returns> public static string GetServicePack() { string results = "Unknown Service Pack"; try { System.Management.ObjectQuery myQuery = new System.Management.ObjectQuery("SELECT * FROM Win32_OperatingSystem"); System.Management.ManagementObjectSearcher mySearcher = new System.Management.ManagementObjectSearcher(myQuery); foreach (System.Management.ManagementObject myObject in mySearcher.Get()) { results = "Service Pack " + myObject["ServicePackMajorVersion"].ToString() + "." + myObject["ServicePackMinorVersion"].ToString(); } } catch { } return(results); }
/// <summary> /// Get the operating System version /// </summary> /// <returns></returns> public static string GetOSVersion() { string results = "Unknown OS"; try { System.Management.ObjectQuery myQuery = new System.Management.ObjectQuery("SELECT * FROM Win32_OperatingSystem"); System.Management.ManagementObjectSearcher mySearcher = new System.Management.ManagementObjectSearcher(myQuery); foreach (System.Management.ManagementObject myObject in mySearcher.Get()) { results = myObject["caption"].ToString(); } return(results + ", " + GetServicePack()); } catch { return(GetOSVersionSafe()); } }
public static void SetNewDefaultPrinter(string newDefaultPrinterName) { string selectAllQuery = "SELECT * FROM Win32_Printer"; System.Management.ObjectQuery oq = new System.Management.ObjectQuery(selectAllQuery); System.Management.ManagementObjectSearcher query1 = new System.Management.ManagementObjectSearcher(oq); System.Management.ManagementObjectCollection queryCollection1 = query1.Get(); System.Management.ManagementObject newDefault = null; foreach (System.Management.ManagementObject mo in queryCollection1) { System.Management.PropertyDataCollection pdc = mo.Properties; if (mo["Name"].ToString().ToUpper().Trim() == newDefaultPrinterName.ToUpper()) { newDefault = mo; break; } } if (newDefault != null) { System.Management.ManagementBaseObject outParams = newDefault.InvokeMethod("SetDefaultPrinter", null, null); string returnValue = outParams["returnValue"].ToString(); if (returnValue != "0") { throw new ApplicationException(string.Format("Change Printer '{0}' failed. Return Value: {1}", newDefault.ToString(), returnValue)); } var HWND_BROADCAST = new IntPtr(0xffff); uint WM_SETTINGCHANGE = 0x001A; UIntPtr innerPinvokeResult; var pinvokeResult = SendMessageTimeout(HWND_BROADCAST, WM_SETTINGCHANGE, UIntPtr.Zero, IntPtr.Zero, SendMessageTimeoutFlags.SMTO_NORMAL, 1000, out innerPinvokeResult); } else { throw new ApplicationException(string.Format("Change Printer '{0}' failed. Managemengt object not found", newDefaultPrinterName)); } }
public static void SetNewDefaultPrinter(string newDefaultPrinterName) { string selectAllQuery = "SELECT * FROM Win32_Printer"; System.Management.ObjectQuery oq = new System.Management.ObjectQuery(selectAllQuery); System.Management.ManagementObjectSearcher query1 = new System.Management.ManagementObjectSearcher(oq); System.Management.ManagementObjectCollection queryCollection1 = query1.Get(); System.Management.ManagementObject newDefault = null; foreach (System.Management.ManagementObject mo in queryCollection1) { System.Management.PropertyDataCollection pdc = mo.Properties; if (mo["Name"].ToString().ToUpper().Trim() == newDefaultPrinterName.ToUpper()) { newDefault = mo; break; } } if (newDefault != null) { System.Management.ManagementBaseObject outParams = newDefault.InvokeMethod("SetDefaultPrinter", null, null); string returnValue = outParams["returnValue"].ToString(); if (returnValue != "0") throw new ApplicationException(string.Format("Change Printer '{0}' failed. Return Value: {1}", newDefault.ToString(), returnValue)); var HWND_BROADCAST = new IntPtr(0xffff); uint WM_SETTINGCHANGE = 0x001A; UIntPtr innerPinvokeResult; var pinvokeResult = SendMessageTimeout(HWND_BROADCAST, WM_SETTINGCHANGE, UIntPtr.Zero, IntPtr.Zero, SendMessageTimeoutFlags.SMTO_NORMAL, 1000, out innerPinvokeResult); } else { throw new ApplicationException(string.Format("Change Printer '{0}' failed. Managemengt object not found", newDefaultPrinterName)); } }
public static int[] GetMaxScreenSize() { var scope = new System.Management.ManagementScope(); var q = new System.Management.ObjectQuery("SELECT * FROM CIM_VideoControllerResolution"); var searcher = new System.Management.ManagementObjectSearcher(scope, q); var results = searcher.Get(); UInt32 maxHResolution = 0; UInt32 maxVResolution = 0; foreach (var item in results) { if ((UInt32)item["HorizontalResolution"] > maxHResolution) { maxHResolution = (UInt32)item["HorizontalResolution"]; } if ((UInt32)item["VerticalResolution"] > maxVResolution) { maxVResolution = (UInt32)item["VerticalResolution"]; } } return(new int[2] { Convert.ToInt32(maxHResolution), Convert.ToInt32(maxVResolution) }); }
private void LoadShares(string Username, string Password, string Computer) { List<Share> shares = new List<Share>(); System.Text.StringBuilder sb = new StringBuilder(); string qry = "select * from win32_share"; System.Management.ManagementObjectSearcher searcher; System.Management.ObjectQuery query = new System.Management.ObjectQuery(qry); if(Username != "" && Password != "" && Computer != "" && !Computer.StartsWith(@"\\localhost")) { System.Management.ConnectionOptions oConn = new System.Management.ConnectionOptions(); oConn.Username = Username; oConn.Password = Password; if(!Computer.StartsWith(@"\\")) Computer = @"\\" + Computer; if(!Computer.ToLower().EndsWith(@"\root\cimv2")) Computer = Computer + @"\root\cimv2"; System.Management.ManagementScope oMs = new System.Management.ManagementScope(Computer, oConn); searcher = new System.Management.ManagementObjectSearcher(oMs, query); } else { searcher = new System.Management.ManagementObjectSearcher(query); } foreach(System.Management.ManagementObject share in searcher.Get()) { Share s = new Share(); foreach(System.Management.PropertyData p in share.Properties) { switch(p.Name) { case "AccessMask": if(p.Value != null) s.AccessMask = p.Value.ToString(); break; case "MaximumAllowed": if(p.Value != null) s.MaximumAllowed = p.Value.ToString(); break; case "InstallDate": if(p.Value != null) s.InstallDate = p.Value.ToString(); break; case "Description": if(p.Value != null) s.Description = p.Value.ToString(); break; case "Caption": if(p.Value != null) s.Caption = p.Value.ToString(); break; case "AllowMaximum": if(p.Value != null) s.AllowMaximum = p.Value.ToString(); break; case "Name": if(p.Value != null) s.Name = p.Value.ToString(); break; case "Path": if(p.Value != null) s.Path = p.Value.ToString(); break; case "Status": if(p.Value != null) s.Status = p.Value.ToString(); break; case "Type": if(p.Value != null) s._Type = p.Value.ToString(); break; default: break; } } shares.Add(s); } this.dataGridView1.DataSource = shares; }
private void LoadShares(string Username, string Password, string Computer) { List <Share> shares = new List <Share>(); System.Text.StringBuilder sb = new StringBuilder(); string qry = "select * from win32_share"; System.Management.ManagementObjectSearcher searcher; System.Management.ObjectQuery query = new System.Management.ObjectQuery(qry); if (Username != "" && Password != "" && Computer != "" && !Computer.StartsWith(@"\\localhost")) { System.Management.ConnectionOptions oConn = new System.Management.ConnectionOptions(); oConn.Username = Username; oConn.Password = Password; if (!Computer.StartsWith(@"\\")) { Computer = @"\\" + Computer; } if (!Computer.ToLower().EndsWith(@"\root\cimv2")) { Computer = Computer + @"\root\cimv2"; } System.Management.ManagementScope oMs = new System.Management.ManagementScope(Computer, oConn); searcher = new System.Management.ManagementObjectSearcher(oMs, query); } else { searcher = new System.Management.ManagementObjectSearcher(query); } foreach (System.Management.ManagementObject share in searcher.Get()) { Share s = new Share(); foreach (System.Management.PropertyData p in share.Properties) { switch (p.Name) { case "AccessMask": if (p.Value != null) { s.AccessMask = p.Value.ToString(); } break; case "MaximumAllowed": if (p.Value != null) { s.MaximumAllowed = p.Value.ToString(); } break; case "InstallDate": if (p.Value != null) { s.InstallDate = p.Value.ToString(); } break; case "Description": if (p.Value != null) { s.Description = p.Value.ToString(); } break; case "Caption": if (p.Value != null) { s.Caption = p.Value.ToString(); } break; case "AllowMaximum": if (p.Value != null) { s.AllowMaximum = p.Value.ToString(); } break; case "Name": if (p.Value != null) { s.Name = p.Value.ToString(); } break; case "Path": if (p.Value != null) { s.Path = p.Value.ToString(); } break; case "Status": if (p.Value != null) { s.Status = p.Value.ToString(); } break; case "Type": if (p.Value != null) { s._Type = p.Value.ToString(); } break; default: break; } } shares.Add(s); } this.dataGridView1.DataSource = shares; }
private void Test13() { string machineName = "svapl02-36"; string name = @"d:\\Web\\Facilities.Instalaciones.BS.WS\\web.config"; System.Management.ManagementScope scope = WIN32.WmiAccess.Connect(machineName); string ext = System.IO.Path.GetExtension(name); if (ext.StartsWith(".")) { ext = ext.Replace(".", ""); } string fname = System.IO.Path.GetFileNameWithoutExtension(name); System.IO.FileInfo f = new System.IO.FileInfo(name); string dir = f.DirectoryName; dir = dir.Replace(@"\", @"\\"); dir = dir.ToLower().Replace("d:", "").Replace("c:", "").Replace("e:", "").Replace("f:", ""); System.Management.ObjectQuery query = new System.Management.ObjectQuery("SELECT * FROM CIM_DataFile WHERE Name = '" + name + "'"); System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(scope, query); System.Management.ManagementObjectCollection results = searcher.Get(); foreach (System.Management.ManagementObject mo in results) { WIN32.CIM_DataFile cm = new DotNet.Tools.WIN32.CIM_DataFile(mo); System.Management.ManagementObjectCollection m_R = mo.GetRelated("Win32_Process"); foreach (System.Management.ManagementObject mmm in m_R) { Console.WriteLine(mmm.ClassPath); } } }
/// <summary> /// HACK: Microsoft CDC driver (usbser.sys) does not register properly as a serial port /// It needs serenum.sys upper port filter which causes problems of its own... /// /// </summary> /// <param name="ports"></param> private static void PatchInZModemSerials(List <SerialPortInfo> ports) { /* SiLabs licensed USB to serial driver PID/VID */ const string SILABS_VID_PID = @"USB\VID_10C4&PID_81E8"; /* Zephyr VID (not specific on PID) */ const string ZEPHYR_VID = @"USB\VID_22F3"; string pnpDevId; int startIndex; int length; System.Management.ManagementScope scope; System.Management.ObjectQuery query; System.Management.ManagementObjectSearcher searcher; System.Management.ManagementObjectCollection returnCollection; System.Management.EnumerationOptions opt = new System.Management.EnumerationOptions(); try { /* get the data NOW, don't put off the query until it is required (30sec timeout) */ opt.ReturnImmediately = false; opt.Timeout = new TimeSpan(0, 0, 30); /* define scope, in this case, this machine */ scope = new System.Management.ManagementScope(@"root\CIMV2"); /* set the query, get all information on the serial ports on the system */ query = new System.Management.ObjectQuery("SELECT * from Win32_SerialPort"); /* stick two together into a search */ searcher = new System.Management.ManagementObjectSearcher(scope, query, opt); /* Run the query */ returnCollection = searcher.Get(); foreach (var oReturn in returnCollection) { pnpDevId = oReturn["PNPDeviceID"] as string; pnpDevId = pnpDevId.ToUpper(); // Vista / Win7 seem to use upper case PID/VID/GUID /* Checks to see if the candidate mySerialPort is a zephyr Serial Port */ if ((pnpDevId.LastIndexOf(SILABS_VID_PID) > -1) || (pnpDevId.LastIndexOf(ZEPHYR_VID) > -1)) { /* Extract the serial number from the PnP mySerialPort ID */ startIndex = pnpDevId.LastIndexOf(@"\") + 1; length = pnpDevId.LastIndexOf(@"_") - startIndex; if (length < 0) { length = pnpDevId.Length - startIndex; } /* If port not already known, add to list */ string serial = pnpDevId.Substring(startIndex, length); string portName = oReturn["DeviceID"] as string; string caption = oReturn["Caption"] as string; var search = ports.FirstOrDefault(item => item.Name == portName); if (search == null) { System.Diagnostics.Debug.WriteLine("Found: " + oReturn["DeviceID"] + " " + oReturn["Caption"]); SerialPortInfo spi = new SerialPortInfo(); spi.SerialName = serial; spi.Name = portName; spi.FriendlyName = caption; spi.Description = caption; spi.Manufacturer = "Zephyr"; spi.Driver = "usbser.sys"; ports.Add(spi); } } } } catch { } }
public static ActionResult GetAndroidUsbDriverVersionWmi( Session session ) { session.Log ( "(DECA) Begin GetAndroidUsbDriverVersionWmi" ); try { System.Management.ManagementClass wmi = new System.Management.ManagementClass ( ); System.Management.ObjectQuery oQuery = new System.Management.ObjectQuery ( string.Format ( CultureInfo.InvariantCulture, WMI_QUERY, REVISION2_GUID ) ); System.Management.ManagementScope oMs = new System.Management.ManagementScope ( ); System.Management.ManagementObjectSearcher oSearcher = new System.Management.ManagementObjectSearcher ( oMs, oQuery ); System.Management.ManagementObjectCollection oResults = oSearcher.Get ( ); if ( oResults.Count > 0 ) { foreach ( var item in oResults ) { string cg = string.Format ( CultureInfo.InvariantCulture, "{0}", item["ClassGuid"] ); if ( !string.IsNullOrEmpty ( cg ) ) { bool foundR1 = string.Compare ( cg, REVISION1_GUID, true ) == 0; bool foundR2 = string.Compare ( cg, REVISION2_GUID, true ) == 0; if ( foundR1 ) { session[ANDROIDUSBDRIVERVERSION] = REVISION1; session[ANDROIDUSBDRIVERSINSTALLED] = "1"; session.Log ( "(DECA) Found Revision 1 version of Android USB Driver" ); return ActionResult.Success; } else if ( foundR2 ) { session[ANDROIDUSBDRIVERVERSION] = REVISION2; session[ANDROIDUSBDRIVERSINSTALLED] = "0"; session.Log ( "(DECA) Found Revision 2 version of Android USB Driver" ); return ActionResult.Success; } else { session.Log ( "(DECA) Did not find a know ClassGuid: {0}", cg ); } } else { session.Log ( "(DECA) ClassGuid was Empty" ); } } } else { session.Log ( "(DECA) No WMI Results were returned." ); } } catch ( Exception ex ) { session.Log ( ex.ToString() ); } session[ANDROIDUSBDRIVERVERSION] = "0"; session[ANDROIDUSBDRIVERSINSTALLED] = "0"; session.Log ( "(DECA) Did not find any version of Android USB Driver" ); return ActionResult.Success; }
//private bool _UseSingleMouse = true; public DemulShooterWindow(string[] Args, bool isVerbose) { //Stop program if Demulshooter already running Process[] pDemulShooter = Process.GetProcessesByName("DemulShooter"); if (pDemulShooter.Length > 1) { MessageBox.Show("Another instance of DemulShooter is already running.\nPlease terminate it before launching a new one", "DemulShooter", MessageBoxButtons.OK, MessageBoxIcon.Error); Environment.Exit(0); } //Creating TrayIcon and TrayIcon "Exit" menu Application.ApplicationExit += new EventHandler(OnApplicationExit); InitializeComponent(); Logger.IsEnabled = isVerbose; Logger.InitLogFileName(); Logger.WriteLog(""); Logger.WriteLog("---------------- Program Start -- DemulShooter v" + System.Reflection.Assembly.GetEntryAssembly().GetName().Version.ToString() + " ----------------"); // Parsing commandline arguments for (int i = 0; i < Args.Length; i++) { Logger.WriteLog("Cmdline arg " + i + " : " + Args[i]); if (Args[i].ToLower().StartsWith("-ddinumber")) { try { //-1 to transform to a 0-based index for later calculation _Ddinumber = UInt32.Parse((Args[i].Split('='))[1].Trim()) - 1; } catch { Logger.WriteLog("-ddinumber parameter not good, it will keep default value"); } } else if (Args[i].ToLower().Equals("-hardffl")) { _HardFfl = true; } else if (Args[i].ToLower().StartsWith("-forcexratio")) { String sX = (Args[i].Split('='))[1].Trim(); try { if (sX.Contains("/") && sX.Split('/').Length > 1) { double d1 = Double.Parse(sX.Split('/')[0]); double d2 = Double.Parse(sX.Split('/')[1]); _ForceXratio = d1 / d2; } else { _ForceXratio = Double.Parse(sX, CultureInfo.InvariantCulture); } } catch { Logger.WriteLog("Can't set -ForcedXratio option : " + sX + " is not a valid value"); } } else if (Args[i].ToLower().Equals("-nocrosshair")) { _HideGameCrosshair = true; } else if (Args[i].ToLower().Equals("-noautoreload")) { _NoAutoReload = true; } else if (Args[i].ToLower().Equals("-noautofire")) { _NoAutoFire = true; } if (Args[i].ToLower().Equals("-noinput")) { _NoInput = true; } else if (Args[i].ToLower().Equals("-noguns")) { _NoGuns = true; } else if (Args[i].ToLower().Equals("-noresize")) { _DisableWindow = true; } if (Args[i].ToLower().StartsWith("-rom")) { _Rom = (Args[i].Split('='))[1].Trim(); } else if (Args[i].ToLower().StartsWith("-target")) { _Target = (Args[i].Split('='))[1].Trim(); if (_Target.StartsWith("demul")) { _DemulVersion = _Target.Substring(5, 3); } } else if (Args[i].ToLower().Equals("-widescreen")) { _WidescreenHack = true; } } if (_TrayIcon != null) { _TrayIcon.Text += "[" + _Target + "] [" + _Rom + "]"; } //Finding plugged devices _AvailableControllers = RawInputHelper.GetRawInputDevices(new RawInputDeviceType[] { RawInputDeviceType.RIM_TYPEHID, RawInputDeviceType.RIM_TYPEMOUSE }); Logger.WriteLog("Found " + _AvailableControllers.Length + " available RawInput devices :"); foreach (RawInputController c in _AvailableControllers) { try { Logger.WriteLog(" + [" + c.DeviceType.ToString() + "] " + c.DeviceName); } catch (Exception ex) { Logger.WriteLog("ERROR : " + ex.Message.ToString()); } } //Reading config file to get parameters _Configurator = new Configurator(); _Configurator.ReadDsConfig(AppDomain.CurrentDomain.BaseDirectory + @"\" + DEMULSHOOTER_CONF_FILENAME); foreach (PlayerSettings Player in _Configurator.PlayersSettings) { Logger.WriteLog("P" + Player.ID + " mode = " + Player.Mode); if (Player.Mode == PlayerSettings.PLAYER_MODE_RAWINPUT) { bool bControllerfound = false; Logger.WriteLog("P" + Player.ID + " device = " + Player.DeviceName); foreach (RawInputController Controller in _AvailableControllers) { //Usually , the device name never change and it's easy to find back a controller if (Controller.DeviceName == Player.DeviceName) { Player.RIController = Controller; Player.RIController.Selected_AxisX = Player.HidAxisX; Player.RIController.Selected_AxisY = Player.HidAxisY; Player.RIController.Selected_OnScreenTriggerButton = Player.HidButton_OnScreenTrigger; Player.RIController.Selected_ActionButton = Player.HidButton_Action; Player.RIController.Selected_OffScreenTriggerButton = Player.HidButton_OffScreenTrigger; Logger.WriteLog("P" + Player.ID + " device plugged and found, Handle = 0x" + Controller.DeviceHandle); Logger.WriteLog("P" + Player.ID + " device : " + Controller.ManufacturerName + " / " + Controller.ProductName); bControllerfound = true; break; } } //Unfortunatelly, on a few cases (SONY DS4 for example), a part of the device name changes so we will check again //with what seems to be a fixed part of the name if (!bControllerfound) { /*foreach (RawInputController Controller in _AvailableControllers) * { * //Usually , the device name never change and it's easy to find back a controller * if (Controller.DeviceName == Player.DeviceName) * { * Player.RIController = Controller; * Player.RIController.Set_AxisX(Player.HidAxisX); * Player.RIController.Set_AxisY(Player.HidAxisY); * Player.RIController.Set_Button_OnScreenTrigger_Index(Player.HidButton_OnScreenTrigger_Index); * Player.RIController.Set_Button_Action_Index(Player.HidButton_Action_Index); * Player.RIController.Set_Button_OffScreenTrigger_Index(Player.HidButton_OffScreenTrigger_Index); * Logger.WriteLog("P" + Player.ID + " device plugged and found, Handle = 0x" + Controller.DeviceHandle); * Logger.WriteLog("P" + Player.ID + " device : " + Controller.ProductName + " / " + Controller.DeviceName); * bControllerfound = true; * break; * } * }*/ } } else { Logger.WriteLog("P" + Player.ID + " Gamepad ID = " + Player.GamepadID); } } //Info on Monitor (max resolution) var scope = new System.Management.ManagementScope(); var q = new System.Management.ObjectQuery("SELECT * FROM CIM_VideoControllerResolution"); String Maxres = String.Empty; using (var searcher = new System.Management.ManagementObjectSearcher(scope, q)) { var results = searcher.Get(); foreach (var item in results) { Maxres = item["Caption"].ToString(); } } Logger.WriteLog("Monitor maximum resolution = " + Maxres); CreateRawMessageWindow(); //Register to RawInput thanks to the previously created window Handle RawInputDevice[] rid = new RawInputDevice[3]; rid[0].UsagePage = HidUsagePage.GENERIC; rid[0].Usage = HidUsage.Joystick; rid[0].dwFlags = RawInputDeviceFlags.RIDEV_INPUTSINK; rid[0].hwndTarget = _RawMessageWnd_hWnd; rid[1].UsagePage = HidUsagePage.GENERIC; rid[1].Usage = HidUsage.Mouse; rid[1].dwFlags = RawInputDeviceFlags.RIDEV_INPUTSINK; rid[1].hwndTarget = _RawMessageWnd_hWnd; rid[2].UsagePage = HidUsagePage.GENERIC; rid[2].Usage = HidUsage.Gamepad; rid[2].dwFlags = RawInputDeviceFlags.RIDEV_INPUTSINK; rid[2].hwndTarget = _RawMessageWnd_hWnd; if (!Win32API.RegisterRawInputDevices(rid, (uint)rid.Length, (uint)Marshal.SizeOf(rid[0]))) { MessageBox.Show("Failed to register raw input device(s).", "DemulShooter Error", MessageBoxButtons.OK, MessageBoxIcon.Error); Application.Exit(); } //Starting Mame-style output daemon if (_Configurator.OutputEnabled) { Logger.WriteLog("Starting Output daemon..."); _OutputHelper = new MameOutputHelper(_RawMessageWnd_hWnd, _Configurator.OutputCustomRecoilOnDelay, _Configurator.OutputCustomRecoilOffDelay, _Configurator.OutputCustomDamagedDelay); _OutputHelper.Start(); _OutputUpdateLoop = new Thread(new ThreadStart(ReadAndSendOutput_Thread)); _OutputUpdateLoop.Start(); } //Starting the fun... if (_Target.Length > 0 && (_Rom.Length > 0 || _Target.StartsWith("dolphin"))) { //Install Low-Level mouse hook ApplyMouseHook(); //Install Low Level keyboard hook ApplyKeyboardHook(); /* * //Running Xinput daemon if needed * bool EnableXInputProc = false; * foreach (ControllerDevice Device in _ControllerDevices) * { * if (Device.GamepadID != -1) * { * EnableXInputProc = true; * break; * } * } * if (EnableXInputProc) * Bgw_XInput.RunWorkerAsync(); */ if (_Target.Equals("chihiro")) { switch (_Rom.ToLower()) { case "vcop3": { _Game = new Game_CxbxVcop3(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); }; break; } } //Demul games else if (_Target.StartsWith("demul")) { if (_Rom.ToLower().Equals("confmiss") || _Rom.ToLower().Equals("deathcox") || _Rom.ToLower().StartsWith("hotd2") || _Rom.ToLower().Equals("lupinsho") || _Rom.ToLower().Equals("mok")) { _Game = new Game_DemulNaomi(_Rom.ToLower(), _DemulVersion, _ForceXratio, _NoInput, isVerbose, _DisableWindow, _WidescreenHack); } else if (_Rom.ToLower().StartsWith("ninjaslt")) { _Game = new Game_DemulJvs(_Rom.ToLower(), _DemulVersion, _ForceXratio, _NoInput, isVerbose, _DisableWindow, _WidescreenHack); } else if (_Rom.ToLower().Equals("braveff")) { _Game = new Game_DemulHikaru(_Rom.ToLower(), _DemulVersion, _ForceXratio, _NoInput, isVerbose, _DisableWindow, _WidescreenHack); } else if (_Rom.ToLower().Equals("manicpnc") || _Rom.ToLower().Equals("pokasuka")) { _Game = new Game_DemulManicpnc(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose, _DisableWindow, _WidescreenHack); } else { _Game = new Game_DemulAtomiswave(_Rom.ToLower(), _DemulVersion, _ForceXratio, _NoInput, isVerbose, _DisableWindow, _WidescreenHack); } } //Dolphin else if (_Target.Equals("dolphin5")) { _Game = new Game_Dolphin5(_Rom.ToLower(), _Ddinumber, _Configurator.DIK_Dolphin_P2_LClick, _Configurator.DIK_Dolphin_P2_MClick, _Configurator.DIK_Dolphin_P2_RClick, _ForceXratio, _NoInput, isVerbose); } //GlobalVR game else if (_Target.Equals("globalvr")) { switch (_Rom.ToLower()) { case "aliens": { _Game = new Game_GvrAliens(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "farcry": { _Game = new Game_GvrFarCryV2(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "fearland": { _Game = new Game_GvrFearLand(_Rom.ToLower(), _HardFfl, _ForceXratio, _NoInput, isVerbose); } break; default: break; } } //Lindbergh else if (_Target.Equals("lindbergh")) { switch (_Rom.ToLower()) { case "2spicy": { _Game = new Game_Lindbergh2spicy(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "hotd4": { _Game = new Game_LindberghHotd4(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "lgj": { _Game = new Game_LindberghLgj(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "lgjsp": { _Game = new Game_LindberghLgjsp(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "rambo": { _Game = new Game_LindberghRambo(_Rom.ToLower(), _HideGameCrosshair, _ForceXratio, _NoInput, isVerbose); } break; default: break; } } //All model2 roms share same method else if (_Target.Equals("model2")) { switch (_Rom.ToLower()) { case "bel": { _Game = new Game_Model2Bel(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "gunblade": { _Game = new Game_Model2Gunblade(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "hotd": { _Game = new Game_Model2Hotd(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "rchase2": { _Game = new Game_Model2Rchase2(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "vcop": { _Game = new Game_Model2Vcop(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "vcop2": { _Game = new Game_Model2Vcop2(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; default: break; } } //Ring system else if (_Target.Equals("ringwide")) { switch (_Rom.ToLower()) { case "sgg": { _Game = new Game_RwSGG(_Rom.ToLower(), _NoAutoFire, _ForceXratio, _NoInput, isVerbose); } break; case "lgi": { _Game = new Game_RwLGI(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "lgi3d": { _Game = new Game_RwLGI3D(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "og": { _Game = new Game_RwOpGhost(_Rom.ToLower(), _Configurator.OpGhost_EnableFreeplay, _Configurator.OpGhost_CreditsToStart, _Configurator.OpGhost_CreditsToContinue, _Configurator.OpGhost_CoinsByCredits, _ForceXratio, _NoInput, isVerbose); } break; case "sdr": { _Game = new Game_RwSDR(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); }; break; case "tha": { _Game = new Game_RwTransformers(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); }; break; default: break; } } //TTX game else if (_Target.Equals("ttx")) { switch (_Rom.ToLower()) { case "bkbs": { _Game = new Game_TtxBlockKingBallShooter(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "eadp": { _Game = new Game_TtxEadp(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "gattack4": { _Game = new Game_TtxGaiaAttack4(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "gsoz": { _Game = new Game_TtxGundam(_Rom.ToLower(), _Configurator.Gsoz_Pedal_P1_Enabled, _Configurator.DIK_Gsoz_Pedal_P1, _Configurator.Gsoz_Pedal_P2_Enabled, _Configurator.DIK_Gsoz_Pedal_P2, _ForceXratio, _NoInput, isVerbose); } break; case "gsoz2p": { _Game = new Game_TtxGundam(_Rom.ToLower(), _Configurator.Gsoz_Pedal_P1_Enabled, _Configurator.DIK_Gsoz_Pedal_P1, _Configurator.Gsoz_Pedal_P2_Enabled, _Configurator.DIK_Gsoz_Pedal_P2, _ForceXratio, _NoInput, isVerbose); } break; case "hmuseum": { _Game = new Game_TtxHauntedMuseum(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "hmuseum2": { _Game = new Game_TtxHauntedMuseum2(_Rom.ToLower(), _HardFfl, _ForceXratio, _NoInput, isVerbose); } break; case "mgungun2": { _Game = new Game_TtxGungun2(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "sha": { _Game = new Game_TtxSha(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; } } //Windows Games else if (_Target.Equals("windows")) { switch (_Rom.ToLower()) { case "artdead": { _Game = new Game_WndArtIsDead(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "friction": { _Game = new Game_WndFriction(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; case "hfa": { _Game = new Game_WndHeavyFire3Pc("hfa", _Configurator.HF3_Path, _Configurator.HF3_CoverSensibility, _NoInput, false, isVerbose); }; break; case "hfa2p": { _Game = new Game_WndHeavyFire3Pc("hfa", _Configurator.HF3_Path, _Configurator.HF3_CoverSensibility, _NoInput, true, isVerbose); }; break; case "hfss": { _Game = new Game_WndHeavyFire4Pc("hfss", _Configurator.HF4_Path, _Configurator.HF4_CoverSensibility, _NoInput, false, isVerbose); }; break; case "hfss2p": { _Game = new Game_WndHeavyFire4Pc("hfss", _Configurator.HF4_Path, _Configurator.HF4_CoverSensibility, _NoInput, true, isVerbose); }; break; case "hod2pc": { _Game = new Game_WndHod2pc(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); }; break; case "hod3pc": { _Game = new Game_WndHod3pc(_Rom.ToLower(), _NoAutoReload, _NoGuns, _ForceXratio, _NoInput, isVerbose); }; break; case "hodo": { _Game = new Game_WndHotdoPc(_Rom.ToLower(), _NoInput, isVerbose); }; break; case "reload": { _Game = new Game_WndReload(_Rom.ToLower(), _HideGameCrosshair, _NoInput, isVerbose); }; break; } } //W.I.P Games else if (_Target.Equals("wip")) { switch (_Rom.ToLower()) { case "wartran": { _Game = new Game_WndWartran(_Rom.ToLower(), _ForceXratio, _NoInput, isVerbose); } break; } } _Game.OnGameHooked += new Game.GameHookedHandler(OnGameHooked); } }