ຄອມພິວເຕີ

ລາຍການບໍລິການໂດຍໃຊ້ C # Managementclass: ຕົວຢ່າງ WMI

ກະວີ: Laura McKinney
ວັນທີຂອງການສ້າງ: 8 ເດືອນເມສາ 2021
ວັນທີປັບປຸງ: 13 ເດືອນພຶດສະພາ 2024
Anonim
ລາຍການບໍລິການໂດຍໃຊ້ C # Managementclass: ຕົວຢ່າງ WMI - ຄອມພິວເຕີ
ລາຍການບໍລິການໂດຍໃຊ້ C # Managementclass: ຕົວຢ່າງ WMI - ຄອມພິວເຕີ

ເນື້ອຫາ

ຂ້ອຍແມ່ນວິສະວະກອນຊອຟແວ. ຂ້ອຍໄດ້ເຮັດວຽກກັບ C ++, MFC, ແລະເຕັກໂນໂລຢີ .net ເປັນເວລາ 15 ປີ. ຂ້ອຍມັກເກມວີດີໂອແລະອ່ານປື້ມ.

WMI ແມ່ນຫຍັງ?

WMIແມ່ນ ເຄື່ອງມືຈັດການ Windows, ແລະມັນຈະຊ່ວຍໃຫ້ dot net framework ດຶງເອົາຂໍ້ມູນຂອງລະບົບ. WMI ແມ່ນໂລກຮຽນແຍກຕ່າງຫາກທີ່ກ່ຽວຂ້ອງກັບການເຂົ້າເຖິງຊັບພະຍາກອນຂອງລະບົບ. ຫ້ອງຮຽນ WMI ປົກກະຕິແລ້ວແມ່ນໃຊ້ ສຳ ລັບການດຶງເອົາຂໍ້ມູນຂອງລະບົບ. ການປ່ຽນແປງຂໍ້ມູນກ່ຽວກັບລະບົບບໍ່ຄ່ອຍຈະເຮັດຜ່ານອິນເຕີເຟດ WMI. ໃນບົດຂຽນນີ້, ພວກເຮົາຈະເບິ່ງວິທີທີ່ພວກເຮົາສ້າງຕົວຢ່າງ WMI. ຂ້ອຍ ກຳ ລັງຈະດຶງເອົາບໍລິການທັງ ໝົດ ທີ່ແລ່ນໃນລະບົບແລະຈະສະແດງບັນດາລາຍການທີ່ຢູ່ໃນລາຍການ.

ສ້າງໂປແກຼມອີງໃສ່ວິນໂດ (ແບບຟອມ)

ຂັ້ນຕອນ ທຳ ອິດແມ່ນການສ້າງ windows application. ປະຕິບັດຕາມຂັ້ນຕອນດັ່ງລຸ່ມນີ້:

  1. ທຳ ອິດ, ສ້າງ New Visual C #, Windows Application Project ທີ່ມີຊື່ CreateInstance
  2. ເມື່ອແບບຟອມຖືກສະແດງ, ອອກແບບຕາມຮູບຂ້າງລຸ່ມນີ້:

  1. ກ່ອງຈົດ ໝາຍ ຄວບຄຸມ. ຂອງມັນ ຊື່ ຊັບສິນຖືກຕັ້ງເປັນ cRLLstBox
  2. ປຸ່ມ ຄວບຄຸມ. ຄຸນສົມບັດຊື່ຂອງມັນຖືກຕັ້ງເປັນ ການບໍລິການ. ຈາກນັ້ນ ຂໍ້​ຄວາມ ຊັບສິນຖືກຕັ້ງເປັນ ຮັບບໍລິການ.
  3. ແບບຟອມ Windows. ຂອງມັນ ຂໍ້​ຄວາມ ຊັບສິນຖືກຕັ້ງເປັນ ໄດ້ຮັບ WMI Instances

ເມື່ອການອອກແບບ ສຳ ເລັດແລ້ວ, ເຫດການກົດປຸ່ມ Click for the ການບໍລິການ ປຸ່ມແມ່ນການສ້າງຕັ້ງ. ເພື່ອສ້າງເຫດການດັ່ງກ່າວ, ໃນມຸມມອງການອອກແບບໃຫ້ກົດສອງເທື່ອທີ່ປຸ່ມ Get Services.


ການປະຕິບັດລະຫັດ

ການກົດສອງຄັ້ງທີ່ປຸ່ມ Get Services ຈະເຮັດໃຫ້ທ່ານຢູ່ໃນ ໜ້າ ທີ່ດັ່ງລຸ່ມນີ້. ຟັງຊັນນັ້ນແມ່ນຕົວຈັດການເຫດການກົດ ສຳ ລັບປຸ່ມ Get Services.

private void btnServices_Click (ຜູ້ສົ່ງວັດຖຸ, EventArgs e) {}

ພວກເຮົາຈະຂຽນລະຫັດ ສຳ ລັບ ໜ້າ ທີ່ຂອງຕົວຈັດການນີ້. ດັ່ງນັ້ນເມື່ອຜູ້ໃຊ້ກົດປຸ່ມ, ລະຫັດທີ່ຂຽນໄວ້ໃນເຄື່ອງຈັດການຈະແລ່ນແລະສະແດງຜົນໃນການຄວບຄຸມ ListBox ທີ່ມີຊື່ ctrlLstBox.

ກ່ອນທີ່ພວກເຮົາຈະເລີ່ມຕົ້ນການເຂົ້າລະຫັດຂອງພວກເຮົາ, ພວກເຮົາຄວນຈະລວມເອົາເອກະສານອ້າງອີງ DLL ທີ່ຖືກຕ້ອງກັບຂອງພວກເຮົາ CreateInsance ໂຄງການ. ເພື່ອເຮັດສິ່ງນີ້, ໃຫ້ຄລິກໃສ່ລາຍການ Project-> Add Reference …ລາຍການ. ຈາກກ່ອງໂຕ້ຕອບທີ່ສະແດງ (ມັນຕ້ອງໃຊ້ເວລາ ໜ້ອຍ ໜຶ່ງ ເພື່ອສະແດງກ່ອງໂຕ້ຕອບ), ພວກເຮົາຄວນເລືອກເອົາ ລະບົບການຄຸ້ມຄອງ ລາຍການແລະຫຼັງຈາກນັ້ນໃຫ້ຄລິກໃສ່ OK. ເພື່ອເລືອກ System.Management, ໃຫ້ແນ່ໃຈວ່າທ່ານຢູ່ໃນແຖບ .net. ນີ້ແມ່ນສະແດງຢູ່ໃນຮູບຂ້າງລຸ່ມນີ້:

ຫຼັງຈາກເພີ່ມເອກະສານອ້າງອີງນີ້, ໂຄງການຂອງພວກເຮົາໄດ້ເຂົ້າເຖິງ ໜ້າ ທີ່ທີ່ DotNet DLL ສະ ໜອງ ໃຫ້, System.Management.dll. ພວກເຮົາສາມາດກວດສອບໄດ້ວ່າການເພີ່ມເອກະສານອ້າງອີງເຂົ້າໃນໂຄງການຢ່າງ ສຳ ເລັດຜົນຫຼືບໍ່ໂດຍການກວດສອບຂໍ້ມູນອ້າງອີງຈາກຜູ້ ສຳ ຫຼວດໂຄງການດັ່ງທີ່ສະແດງຢູ່ຂ້າງລຸ່ມນີ້:


ເມື່ອການອ້າງອິງກຽມພ້ອມແລ້ວພວກເຮົາເລີ່ມຕົ້ນລະຫັດຂອງພວກເຮົາດ້ວຍຂັ້ນຕອນເຫຼົ່ານີ້.

1) ຂັ້ນຕອນ ທຳ ອິດແມ່ນການເພີ່ມເອກະສານອ້າງອີງທີ່ສ້າງຂື້ນມາຂ້າງເທິງຂອງເອກະສານທາງເທີງ (ຫຼັງຈາກມີການ ນຳ ໃຊ້ ຄຳ ຖະແຫຼງການທີ່ມີຢູ່ແລ້ວ). ນີ້ຈະຊ່ວຍໃຫ້ພວກເຮົາສາມາດເຂົ້າເຖິງຫ້ອງຮຽນທີ່ເກັບໄວ້ພາຍໃນລະບົບຊື່ຂອງ System.Management. ລະຫັດນີ້ແມ່ນສະແດງຢູ່ດ້ານລຸ່ມ:

// ຕົວຢ່າງ 01: ຕ້ອງການຊື່ຊ່ອງທີ່ໃຊ້ System.Management;

2) ໃນການຈັດການປຸ່ມກົດປຸ່ມ, ທຳ ອິດ,“system.management.managementclass” ຖືກສ້າງຂື້ນ. ພວກເຮົາຜ່ານໄປ Win32_Services ກັບຜູ້ກໍ່ສ້າງຂອງມັນແລະການເຮັດດັ່ງນັ້ນພວກເຮົາໄດ້ຮັບຫ້ອງ Win32 Service ໃນເວລາແລ່ນ. ຈາກຫ້ອງຮຽນນີ້, ພວກເຮົາສາມາດໄດ້ຮັບທຸກໆກໍລະນີທີ່ເປັນຂອງມັນ. ຂ້າງລຸ່ມນີ້ແມ່ນລະຫັດທີ່ສະແດງໃຫ້ເຫັນການສ້າງ Class ថ្នាក់ ManagementClass ທີ່ມີຊື່ service_class.


// ຕົວຢ່າງ 02: ສ້າງ Class Management Class ManagementClass service_class = ໃໝ່ ManagementClass ("Win32_Service");

3) ວັດຖຸທັງ ໝົດ ທີ່ເປັນຂອງ Win32_Service ແມ່ນເອົາມາຈາກ service_class ຕົວຢ່າງທີ່ພວກເຮົາສ້າງຂື້ນມາຈາກຂັ້ນຕອນກ່ອນ ໜ້າ ຂອງການເຂົ້າລະຫັດນີ້. ການໂທຫາ ໜ້າ ທີ່ GetIn សារធាតុ () ຈະດຶງເອົາການບໍລິການທັງ ໝົດ ທີ່ເຮັດວຽກຢູ່ໃນລະບົບເຊັ່ນ ManagementObjectການລວບລວມ. ນີ້ແມ່ນສະແດງຢູ່ໃນລະຫັດຂ້າງລຸ່ມນີ້:

// ຕົວຢ່າງ 03: ຮັບເອົາວັດຖຸທຸກຢ່າງຂອງຫ້ອງຮຽນ Win32_Service. ແຕ່ລະວັດຖຸ // ເປັນຕົວແທນ ໜຶ່ງ ການບໍລິການ ManagementObjectCollection Service_objects_collection = service_class.GetInstances ();

4) ຕໍ່ໄປ, ພວກເຮົາໄດ້ຮັບຕົວຢ່າງຂອງ Class ManagementObject ແຕ່ລະອັນໂດຍການເຮັດຊ້ ຳ ອີກຜ່ານ Service_objects_collection. ການກໍ່ສ້າງຂອງ Foreach ແມ່ນໃຊ້ເພື່ອເຮັດການຕອບແທນ. ເມື່ອພວກເຮົາມີຕົວຢ່າງ ManagementObject ທີ່ມີຢູ່ພາຍໃນຮ່າງກາຍຂອງ Foreach loop, ພວກເຮົາ ກຳ ລັງດຶງເອົາຊັບສິນຊື່ຂອງຕົວຢ່າງແລະເພີ່ມມັນເຂົ້າໃນລາຍຊື່ຄວບຄຸມ. ລະຫັດແມ່ນສະແດງຢູ່ດ້ານລຸ່ມ:

// ຕົວຢ່າງທີ 04: ປະສົມຜ່ານແຕ່ລະບໍລິການແລະສະແດງຊື່ຂອງ // service foreach (ການບໍລິການ ManagementObject ໃນ Service_objects_collection) {ctrlLstBox.Items.Add (ບໍລິການ ["ຊື່"] ToString ()); }

ພາບ ໜ້າ ຈໍຫຼັງຈາກປະຕິບັດການຈັດການການກົດປຸ່ມກົດແມ່ນສະແດງຢູ່ດ້ານລຸ່ມ:

ລະຫັດຄົບຖ້ວນໃນເອກະສານແມ່ນສະແດງຢູ່ດ້ານລຸ່ມ:

ການ ນຳ ໃຊ້ລະບົບ; ການນໍາໃຊ້ System.Collections.Generic; ການນໍາໃຊ້ System.ComponentModel; ການ ນຳ ໃຊ້ System.Data; ການນໍາໃຊ້ System.Drawing; ການນໍາໃຊ້ System.Text; ການນໍາໃຊ້ System.Windows.Forms; // ຕົວຢ່າງ 01: ຕ້ອງການຊື່ຊ່ອງທີ່ໃຊ້ System.Management; namespace CreateInstance {ຊັ້ນຮຽນພາກສ່ວນສາທາລະນະ Form1: Form {public Form1 () {InitializeComponent (); } private void btnServices_Click (ຜູ້ສົ່ງວັດຖຸ, EventArgs e) {// ຕົວຢ່າງ 02: ສ້າງ Class Management Class ManagementClass service_class = ໃໝ່ ManagementClass ("Win32_Service"); // ຕົວຢ່າງ 03: ຮັບເອົາວັດຖຸທຸກຢ່າງຂອງຫ້ອງຮຽນ Win32_Service. ແຕ່ລະວັດຖຸ // ເປັນຕົວແທນ ໜຶ່ງ ການບໍລິການ ManagementObjectCollection Service_objects_collection = service_class.GetInstances (); // ຕົວຢ່າງທີ 04: ປະສົມຜ່ານແຕ່ລະບໍລິການແລະສະແດງຊື່ຂອງ // service foreach (ການບໍລິການ ManagementObject ໃນ Service_objects_collection) {ctrlLstBox.Items.Add (ບໍລິການ ["ຊື່"] ToString ()); }}}}

ບົດຂຽນນີ້ແມ່ນຖືກຕ້ອງແລະຖືກຕ້ອງກັບຄວາມຮູ້ທີ່ດີທີ່ສຸດຂອງຜູ້ຂຽນ. ເນື້ອຫາແມ່ນເພື່ອຈຸດປະສົງທາງດ້ານຂໍ້ມູນຂ່າວສານຫລືການບັນເທີງເທົ່ານັ້ນແລະບໍ່ປ່ຽນແທນ ຄຳ ແນະ ນຳ ສ່ວນຕົວຫລື ຄຳ ແນະ ນຳ ດ້ານວິຊາຊີບໃນເລື່ອງທຸລະກິດ, ການເງິນ, ກົດ ໝາຍ, ຫຼືວິຊາການ.

ຫນ້າສົນໃຈໃນມື້ນີ້

ການອ່ານທີ່ສຸດ

ການທົບທວນ MSboard Z270 Tomahawk Motherboard
ຄອມພິວເຕີ

ການທົບທວນ MSboard Z270 Tomahawk Motherboard

ຂ້ອຍເປັນພຽງແຕ່ຜູ້ຊາຍເວລານ້ອຍທີ່ເຮັດວຽກປົກກະຕິເປັນຜູ້ຊ່ວຍແພດ. ຄວາມກະຕືລືລົ້ນຂອງຂ້ອຍແມ່ນການສ້າງ PC ແລະທົດສອບ / ກວດສອບ Hardware PC.ສະບາຍດີທຸກໆຄົນ, ຈະຢູ່ນີ້. ມື້ນີ້, ຂ້ອຍຈະມາທົບທວນ M I Z270 motherboard, ເ...
ແບບຟອມ PHP ໃສ່ຂໍ້ມູນເຂົ້າໃນເອກະສານ CSV
ຄອມພິວເຕີ

ແບບຟອມ PHP ໃສ່ຂໍ້ມູນເຂົ້າໃນເອກະສານ CSV

ມື້ນີ້ພວກເຮົາຈະໃຊ້ກ .c v (comma ແຍກຄຸນຄ່າ) file ເພື່ອເກັບຄ່າຕ່າງໆຈາກ online ແບບຟອມເວັບໄຊຕ໌ PHP.ເອກະສານ .c v ແມ່ນເອກະສານ ໜຶ່ງ ທີ່ທ່ານສາມາດສ້າງໄດ້ງ່າຍກັບ Micro oft Excel (ຄວາມຮູ້ເພີ່ມເຕີມແມ່ນເກີນຂອບເຂດຂ...