- // MyDlgExDlg.cpp : 实现文件
- //
- #include "stdafx.h"
- #include "MyDlgEx.h"
- #include "MyDlgExDlg.h"
- #ifdef _DEBUG
- #define new DEBUG_NEW
- #endif
- // 用于应用程序“关于”菜单项的 CAboutDlg 对话框
- class CAboutDlg : public CDialog
- {
- public:
- CAboutDlg();
- // 对话框数据
- enum { IDD = IDD_ABOUTBOX };
- protected:
- virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
- // 实现
- protected:
- DECLARE_MESSAGE_MAP()
- };
- CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
- {
- }
- void CAboutDlg::DoDataExchange(CDataExchange* pDX)
- {
- CDialog::DoDataExchange(pDX);
- }
- BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
- END_MESSAGE_MAP()
- // CMyDlgExDlg 对话框
- CMyDlgExDlg::CMyDlgExDlg(CWnd* pParent /*=NULL*/)
- : CDialog(CMyDlgExDlg::IDD, pParent)
- {
- m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
- }
- void CMyDlgExDlg::DoDataExchange(CDataExchange* pDX)
- {
- CDialog::DoDataExchange(pDX);
- }
- BEGIN_MESSAGE_MAP(CMyDlgExDlg, CDialog)
- ON_WM_SYSCOMMAND()
- ON_WM_PAINT()
- ON_WM_QUERYDRAGICON()
- //}}AFX_MSG_MAP
- ON_BN_CLICKED(IDC_BUTTON1, &CMyDlgExDlg::OnBnClickedButton1)
- ON_BN_CLICKED(IDC_BUTTON2, &CMyDlgExDlg::OnBnClickedButton2)
- ON_BN_CLICKED(IDC_BUTTON3, &CMyDlgExDlg::OnBnClickedButton3)
- ON_BN_CLICKED(IDC_BUTTON4, &CMyDlgExDlg::OnBnClickedButton4)
- ON_BN_CLICKED(IDC_BUTTON5, &CMyDlgExDlg::OnBnClickedButton5)
- ON_BN_CLICKED(IDC_BUTTON6, &CMyDlgExDlg::OnBnClickedButton6)
- ON_BN_CLICKED(IDC_BUTTON7, &CMyDlgExDlg::OnBnClickedButton7)
- ON_BN_CLICKED(IDC_BUTTON8, &CMyDlgExDlg::OnBnClickedButton8)
- ON_BN_CLICKED(IDC_BUTTON9, &CMyDlgExDlg::OnBnClickedButton9)
- ON_BN_CLICKED(IDC_BUTTON10, &CMyDlgExDlg::OnBnClickedButton10)
- ON_BN_CLICKED(IDC_BUTTON11, &CMyDlgExDlg::OnBnClickedButton11)
- ON_BN_CLICKED(IDC_BUTTON12, &CMyDlgExDlg::OnBnClickedButton12)
- ON_BN_CLICKED(IDC_BUTTON13, &CMyDlgExDlg::OnBnClickedButton13)
- ON_BN_CLICKED(IDC_BUTTON14, &CMyDlgExDlg::OnBnClickedButton14)
- ON_BN_CLICKED(IDC_BUTTON15, &CMyDlgExDlg::OnBnClickedButton15)
- ON_BN_CLICKED(IDC_BUTTON16, &CMyDlgExDlg::OnBnClickedButton16)
- ON_BN_CLICKED(IDC_BUTTON17, &CMyDlgExDlg::OnBnClickedButton17)
- ON_BN_CLICKED(IDC_BUTTON18, &CMyDlgExDlg::OnBnClickedButton18)
- ON_BN_CLICKED(IDC_BUTTON19, &CMyDlgExDlg::OnBnClickedButton19)
- ON_BN_CLICKED(IDC_BUTTON20, &CMyDlgExDlg::OnBnClickedButton20)
- ON_BN_CLICKED(IDC_BUTTON21, &CMyDlgExDlg::OnBnClickedButton21)
- ON_BN_CLICKED(IDC_BUTTON22, &CMyDlgExDlg::OnBnClickedButton22)
- ON_BN_CLICKED(IDC_BUTTON23, &CMyDlgExDlg::OnBnClickedButton23)
- ON_BN_CLICKED(IDC_BUTTON24, &CMyDlgExDlg::OnBnClickedButton24)
- ON_BN_CLICKED(IDC_BUTTON25, &CMyDlgExDlg::OnBnClickedButton25)
- ON_BN_CLICKED(IDC_BUTTON26, &CMyDlgExDlg::OnBnClickedButton26)
- ON_BN_CLICKED(IDC_BUTTON27, &CMyDlgExDlg::OnBnClickedButton27)
- ON_BN_CLICKED(IDC_BUTTON28, &CMyDlgExDlg::OnBnClickedButton28)
- ON_BN_CLICKED(IDC_BUTTON29, &CMyDlgExDlg::OnBnClickedButton29)
- ON_BN_CLICKED(IDC_BUTTON30, &CMyDlgExDlg::OnBnClickedButton30)
- ON_BN_CLICKED(IDC_BUTTON31, &CMyDlgExDlg::OnBnClickedButton31)
- ON_BN_CLICKED(IDC_BUTTON32, &CMyDlgExDlg::OnBnClickedButton32)
- ON_BN_CLICKED(IDC_BUTTON33, &CMyDlgExDlg::OnBnClickedButton33)
- ON_BN_CLICKED(IDC_BUTTON34, &CMyDlgExDlg::OnBnClickedButton34)
- ON_BN_CLICKED(IDC_BUTTON35, &CMyDlgExDlg::OnBnClickedButton35)
- ON_BN_CLICKED(IDC_BUTTON36, &CMyDlgExDlg::OnBnClickedButton36)
- ON_BN_CLICKED(IDC_BUTTON37, &CMyDlgExDlg::OnBnClickedButton37)
- ON_BN_CLICKED(IDC_BUTTON38, &CMyDlgExDlg::OnBnClickedButton38)
- ON_BN_CLICKED(IDC_BUTTON39, &CMyDlgExDlg::OnBnClickedButton39)
- ON_BN_CLICKED(IDC_BUTTON40, &CMyDlgExDlg::OnBnClickedButton40)
- ON_BN_CLICKED(IDC_BUTTON41, &CMyDlgExDlg::OnBnClickedButton41)
- ON_BN_CLICKED(IDC_BUTTON42, &CMyDlgExDlg::OnBnClickedButton42)
- ON_BN_CLICKED(IDC_BUTTON43, &CMyDlgExDlg::OnBnClickedButton43)
- ON_BN_CLICKED(IDC_BUTTON44, &CMyDlgExDlg::OnBnClickedButton44)
- END_MESSAGE_MAP()
- // CMyDlgExDlg 消息处理程序
- BOOL CMyDlgExDlg::OnInitDialog()
- {
- CDialog::OnInitDialog();
- // 将“关于...”菜单项添加到系统菜单中。
- // IDM_ABOUTBOX 必须在系统命令范围内。
- ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
- ASSERT(IDM_ABOUTBOX < 0xF000);
- CMenu* pSysMenu = GetSystemMenu(FALSE);
- if (pSysMenu != NULL)
- {
- CString strAboutMenu;
- strAboutMenu.LoadString(IDS_ABOUTBOX);
- if (!strAboutMenu.IsEmpty())
- {
- pSysMenu->AppendMenu(MF_SEPARATOR);
- pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
- }
- }
- // 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
- // 执行此操作
- SetIcon(m_hIcon, TRUE); // 设置大图标
- SetIcon(m_hIcon, FALSE); // 设置小图标
- // TODO: 在此添加额外的初始化代码
- return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
- }
- void CMyDlgExDlg::OnSysCommand(UINT nID, LPARAM lParam)
- {
- if ((nID & 0xFFF0) == IDM_ABOUTBOX)
- {
- CAboutDlg dlgAbout;
- dlgAbout.DoModal();
- }
- else
- {
- CDialog::OnSysCommand(nID, lParam);
- }
- }
- // 如果向对话框添加最小化按钮,则需要下面的代码
- // 来绘制该图标。对于使用文档/视图模型的 MFC 应用程序,
- // 这将由框架自动完成。
- void CMyDlgExDlg::OnPaint()
- {
- if (IsIconic())
- {
- CPaintDC dc(this); // 用于绘制的设备上下文
- SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
- // 使图标在工作矩形中居中
- int cxIcon = GetSystemMetrics(SM_CXICON);
- int cyIcon = GetSystemMetrics(SM_CYICON);
- CRect rect;
- GetClientRect(&rect);
- int x = (rect.Width() - cxIcon + 1) / 2;
- int y = (rect.Height() - cyIcon + 1) / 2;
- // 绘制图标
- dc.DrawIcon(x, y, m_hIcon);
- }
- else
- {
- CDialog::OnPaint();
- }
- }
- //当用户拖动最小化窗口时系统调用此函数取得光标显示。
- //
- HCURSOR CMyDlgExDlg::OnQueryDragIcon()
- {
- return static_cast<HCURSOR>(m_hIcon);
- }
- void CMyDlgExDlg::OnBnClickedButton1()
- {//启动Windows管理体系结构(WMI)
- CString MyCommand="cmd /c \"wmimgmt.msc\"";
- WinExec(MyCommand,SW_HIDE);
- }
- void CMyDlgExDlg::OnBnClickedButton2()
- {//获取指定进程的详细进程信息
- CString MyCommand="cmd /c wmic process WHERE Name='Notepad.exe' list FULL > c:\\MyProc.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(2000);
- CString MyFile="c:\\MyProc.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton3()
- {//获取指定进程的进程简要信息
- CString MyCommand="cmd /c wmic process WHERE Name='Notepad.exe' list Brief > c:\\MyProc.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(2000);
- CString MyFile="c:\\MyProc.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton4()
- {//获取指定进程的执行路径信息
- CString MyCommand="cmd /c wmic process WHERE Name='Notepad.exe' Get ExecutablePath > c:\\MyProc.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(2000);
- CString MyFile="c:\\MyProc.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton5()
- {//获取所有进程的执行路径信息
- CString MyCommand="cmd /c wmic process get caption, ExecutablePath > c:\\MyProc.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(2000);
- CString MyFile="c:\\MyProc.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton6()
- {//将获取的进程信息保存为XML文件
- CString MyCommand="cmd /c wmic process list /format:XML > c:\\MyProc.xml";
- WinExec(MyCommand,SW_HIDE);
- Sleep(2000);
- CString MyFile="c:\\MyProc.xml";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton7()
- {//获取所有进程的内存使用信息
- CString MyCommand="cmd /c wmic process list Memory > c:\\MyProc.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(10000);
- CString MyFile="c:\\MyProc.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton8()
- {//获取所有进程的统计数据信息
- CString MyCommand="cmd /c wmic process list statistics > c:\\MyProc.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(15000);
- CString MyFile="c:\\MyProc.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton9()
- {//获取所有进程的IO数据信息
- CString MyCommand="cmd /c wmic process list IO > c:\\MyProc.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(15000);
- CString MyFile="c:\\MyProc.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton10()
- {//获取BIOS的名称和制造商信息
- CString MyCommand="cmd /c wmic bios get name,Manufacturer /value > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton11()
- {//获取CDROM所在的驱动器名称
- CString MyCommand="cmd /c wmic CDROM get Drive /value > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton12()
- {//获取计算机系统的角色信息
- CString MyCommand="cmd /c wmic COMPUTERSYSTEM GET Roles /value > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton13()
- {//获取CPU处理器的ID号码信息
- CString MyCommand="cmd /c wmic CPU GET ProcessorID /value > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton14()
- {//获取计算机的DOCM程序名称信息
- CString MyCommand="cmd /c wmic DCOMAPP GET Name > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(5000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton15()
- {//获取磁盘(非逻辑分区)的容量大小
- CString MyCommand="cmd /c wmic diskdrive GET Name,size /value > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton16()
- {//获取直接内存访问(DMA)频道信息
- CString MyCommand="cmd /c wmic dmachannel list brief > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton17()
- {//获取当前系统的所有环境变量及值
- CString MyCommand="cmd /c wmic environment get Name,variablevalue > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(5000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton18()
- {//获取系统的组成员账户及其职责
- CString MyCommand="cmd /c wmic group list full > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton19()
- {//获取当前系统的IDE控制器信息
- CString MyCommand="cmd /c wmic IDECONTROLLER list full > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton20()
- {//获取当前系统的逻辑分区卷序列号
- CString MyCommand="cmd /c wmic logicalDisk get name,volumeserialnumber /value> c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(8000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton21()
- {//获取当前系统的缓存管理信息
- CString MyCommand="cmd /c wmic memcache list full > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(2000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton22()
- {//获取当前系统的虚拟内存信息
- CString MyCommand="cmd /c wmic memlogical get totalvirtualmemory /value > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(2000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton23()
- {//获取当前系统的物理内存信息
- CString MyCommand="cmd /c wmic memlogical get totalphysicalmemory /value > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(2000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton24()
- {//获取当前系统的网络客户端信息
- CString MyCommand="cmd /c wmic netclient list full > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(2000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton25()
- {//获取用户最近登录系统的日期信息
- CString MyCommand="cmd /c wmic netlogin get name,lastlogon /value> c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(2000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton26()
- {//获取当前操作系统的安装日期
- CString MyCommand="cmd /c wmic os get installdate /value> c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(2000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton27()
- {//获取当前操作系统的安装包管理信息
- CString MyCommand="cmd /c wmic product list full> c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(5000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton28()
- {//获取当前系统已经安装的软件信息
- CString MyCommand="cmd /c wmic softwarefeature list full > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(10000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton29()
- {//获取系统已经安装的声音设备信息
- CString MyCommand="cmd /c wmic Sounddev list full > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton30()
- {//获取系统启动时自动运行的命令信息
- CString MyCommand="cmd /c wmic startup get command > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton31()
- {//获取当前系统的系统插槽信息
- CString MyCommand="cmd /c wmic SYSTEMSLOT get tag,SlotDesignation /value > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- void CMyDlgExDlg::OnBnClickedButton32()
- {//获取当前系统设置的用户账户信息
- CString MyCommand="cmd /c wmic useraccount get name > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
- #include <atlbase.h>
- #include <afxpriv.h>
- #include <WbemIdl.h>
- #pragma comment(lib,"WbemUuid.lib")
- class CMyWMI
- {
- protected:
- IEnumWbemClassObject* m_pMyEnumWbem;
- IWbemClassObject* m_pMyWbemObj;
- IWbemServices* m_pMyWbemSvc;
- IWbemLocator* m_pMyWbemLoc;
- public:
- CMyWMI(void)
- {
- m_pMyWbemSvc=0;
- m_pMyWbemLoc=0;
- }
- ~CMyWMI(void)
- {
- m_pMyWbemSvc=0;
- m_pMyWbemLoc=0;
- }
- public:
- HRESULT InitializeComInterface()
- {
- HRESULT MyHResult=CoInitializeEx(0,COINIT_MULTITHREADED);
- VERIFY(SUCCEEDED(MyHResult));
- MyHResult=CoInitializeSecurity(0,-1,0,0,RPC_C_AUTHN_LEVEL_PKT,RPC_C_IMP_LEVEL_IMPERSONATE,0,EOAC_NONE,0);
- VERIFY(SUCCEEDED(MyHResult));
- MyHResult=CoCreateInstance(CLSID_WbemLocator,0,CLSCTX_INPROC_SERVER,IID_IWbemLocator,(LPVOID*)&m_pMyWbemLoc);
- VERIFY(SUCCEEDED(MyHResult));
- MyHResult=m_pMyWbemLoc->ConnectServer(CComBSTR(L"ROOT\\CIMV2"),0,0,0,0,0,0,&m_pMyWbemSvc);
- VERIFY(SUCCEEDED(MyHResult));
- MyHResult=CoSetProxyBlanket(m_pMyWbemSvc,RPC_C_AUTHN_WINNT,RPC_C_AUTHZ_NONE,0,RPC_C_AUTHN_LEVEL_CALL,RPC_C_IMP_LEVEL_IMPERSONATE,0,EOAC_NONE);
- VERIFY(SUCCEEDED(MyHResult));
- return(MyHResult);
- }
- HRESULT ReleaseComInterface()
- {
- HRESULT MyHResult=m_pMyWbemSvc->Release();
- MyHResult=m_pMyWbemLoc->Release();
- CoUninitialize();
- return(MyHResult);
- }
- CString CMyWMI::TransferData(const LPVARIANT pVar) const
- {
- USES_CONVERSION;
- CComBSTR HUGEP* pMyBstr;
- BYTE HUGEP* pMyBuf;
- CString MyData,MyTip;
- LONG iMyLow,iMyHigh;
- HRESULT MyHResult;
- switch(pVar->vt)
- {
- case VT_BSTR:
- MyData=W2T(pVar->bstrVal);
- break;
- case VT_BOOL:
- if(VARIANT_TRUE==pVar->boolVal)
- MyData="是";
- else
- MyData="否";
- break;
- case VT_I4:
- MyData.Format("%d",pVar->lVal);
- break;
- case VT_UI1:
- MyData.Format("%d",pVar->bVal);
- break;
- case VT_UI4:
- MyData.Format("%d",pVar->ulVal);
- break;
- case VT_BSTR|VT_ARRAY:
- MyHResult=SafeArrayAccessData(pVar->parray,(void HUGEP**)&pMyBstr);
- MyHResult=SafeArrayUnaccessData(pVar->parray);
- MyData=W2T(pMyBstr->m_str);
- break;
- case VT_I4|VT_ARRAY:
- SafeArrayGetLBound(pVar->parray,1,&iMyLow);
- SafeArrayGetUBound(pVar->parray,1,&iMyHigh);
- MyHResult=SafeArrayAccessData(pVar->parray,(void HUGEP**)&pMyBuf);
- MyHResult=SafeArrayUnaccessData(pVar->parray);
- iMyHigh=min(iMyHigh,MAX_PATH*2-1);
- for(int i=iMyLow;i<=iMyHigh;++i)
- {
- MyTip.Format("%02X ",pMyBuf[i]);
- MyData+=MyTip;
- }
- break;
- default:
- break;
- }
- return(MyData);
- }
- CString CMyWMI::GetQueryData(CString MyWQL,CString MyItem)
- {
- USES_CONVERSION;
- CComBSTR MyQuery=CComBSTR(MyWQL);
- CString MyResult,MyData;
- VARIANT MyVar;
- ULONG MyReturn;
- HRESULT MyHResult;
- m_pMyEnumWbem=0;
- m_pMyWbemObj=0;
- MyHResult=m_pMyWbemSvc->ExecQuery(CComBSTR("WQL"),MyQuery,WBEM_FLAG_FORWARD_ONLY|WBEM_FLAG_RETURN_IMMEDIATELY,0,&m_pMyEnumWbem);
- VariantInit(&MyVar);
- MyReturn=0;
- MyHResult=m_pMyEnumWbem->Next(WBEM_INFINITE,1,&m_pMyWbemObj,&MyReturn);
- if(SUCCEEDED(MyHResult)&&MyReturn>0)
- MyHResult=m_pMyWbemObj->Get(CComBSTR(MyItem),0,&MyVar,0,0);
- else
- return(MyData);
- MyData=TransferData(&MyVar);
- VariantClear(&MyVar);
- if(m_pMyEnumWbem)
- MyHResult=m_pMyEnumWbem->Release();
- if(m_pMyWbemObj)
- MyHResult=m_pMyWbemObj->Release();
- m_pMyEnumWbem=0;
- m_pMyWbemObj=0;
- return(MyData);
- }
- };
- void CMyDlgExDlg::OnBnClickedButton33()
- {//使用COM接口调用WMI查询数据信息
- CString MyData="CPU的描述信息是:";
- CMyWMI MyWmi;
- MyWmi.InitializeComInterface();
- CString MyTip=MyWmi.GetQueryData("SELECT * FROM Win32_Processor","Description");
- if(!MyTip.IsEmpty())
- {
- MyData+=MyTip+"\r\n";
- MessageBox(MyData,"信息提示",0);
- }
- MyWmi.ReleaseComInterface();
- }
- void CMyDlgExDlg::OnBnClickedButton34()
- {//获取当前计算机CPU的名称信息
- CString MyData="当前计算机CPU的名称是:";
- CMyWMI MyWmi;
- MyWmi.InitializeComInterface();
- CString MyTip=MyWmi.GetQueryData("SELECT * FROM Win32_Processor","Name");
- if(!MyTip.IsEmpty())
- {
- MyData+=MyTip+"\r\n";
- MessageBox(MyData,"信息提示",0);
- }
- MyWmi.ReleaseComInterface();
- }
- void CMyDlgExDlg::OnBnClickedButton35()
- {//获取当前计算机CPU的地址宽度
- CString MyData="当前计算机CPU的地址宽度是:";
- CMyWMI MyWmi;
- MyWmi.InitializeComInterface();
- CString MyTip=MyWmi.GetQueryData("SELECT * FROM Win32_Processor","AddressWidth");
- if(!MyTip.IsEmpty())
- {
- MyData+=MyTip+"\r\n";
- MessageBox(MyData,"信息提示",0);
- }
- MyWmi.ReleaseComInterface();
- }
- void CMyDlgExDlg::OnBnClickedButton36()
- {//获取当前计算机CPU的数据宽度
- CString MyData="当前计算机CPU的数据宽度是:";
- CMyWMI MyWmi;
- MyWmi.InitializeComInterface();
- CString MyTip=MyWmi.GetQueryData("SELECT * FROM Win32_Processor","DataWidth");
- if(!MyTip.IsEmpty())
- {
- MyData+=MyTip+"\r\n";
- MessageBox(MyData,"信息提示",0);
- }
- MyWmi.ReleaseComInterface();
- }
- void CMyDlgExDlg::OnBnClickedButton37()
- {//获取当前计算机CPU的当前时钟速度
- CString MyData="当前计算机CPU的当前时钟速度是:";
- CMyWMI MyWmi;
- MyWmi.InitializeComInterface();
- CString MyTip=MyWmi.GetQueryData("SELECT * FROM Win32_Processor","CurrentClockSpeed");
- if(!MyTip.IsEmpty())
- {
- MyData+=MyTip+"\r\n";
- MessageBox(MyData,"信息提示",0);
- }
- MyWmi.ReleaseComInterface();
- }
- void CMyDlgExDlg::OnBnClickedButton38()
- {//获取当前计算机CPU的最大时钟速度
- CString MyData="当前计算机CPU的最大时钟速度是:";
- CMyWMI MyWmi;
- MyWmi.InitializeComInterface();
- CString MyTip=MyWmi.GetQueryData("SELECT * FROM Win32_Processor","MaxClockSpeed");
- if(!MyTip.IsEmpty())
- {
- MyData+=MyTip+"\r\n";
- MessageBox(MyData,"信息提示",0);
- }
- MyWmi.ReleaseComInterface();
- }
- void CMyDlgExDlg::OnBnClickedButton39()
- {//获取当前计算机CPU的外部时钟速度
- CString MyData="当前计算机CPU的外部时钟速度是:";
- CMyWMI MyWmi;
- MyWmi.InitializeComInterface();
- CString MyTip=MyWmi.GetQueryData("SELECT * FROM Win32_Processor","ExtClock");
- if(!MyTip.IsEmpty())
- {
- MyData+=MyTip+"\r\n";
- MessageBox(MyData,"信息提示",0);
- }
- MyWmi.ReleaseComInterface();
- }
- void CMyDlgExDlg::OnBnClickedButton40()
- {//获取当前计算机CPU的加载百分比
- CString MyData="当前计算机CPU的加载百分比是:";
- CMyWMI MyWmi;
- MyWmi.InitializeComInterface();
- CString MyTip=MyWmi.GetQueryData("SELECT * FROM Win32_Processor","LoadPercentage");
- if(!MyTip.IsEmpty())
- {
- MyData+=MyTip+"\r\n";
- MessageBox(MyData,"信息提示",0);
- }
- MyWmi.ReleaseComInterface();
- }
- void CMyDlgExDlg::OnBnClickedButton41()
- {//获取当前计算机CPU的设备制造商
- CString MyData="当前计算机CPU的设备制造商是:";
- CMyWMI MyWmi;
- MyWmi.InitializeComInterface();
- CString MyTip=MyWmi.GetQueryData("SELECT * FROM Win32_Processor","Manufacturer");
- if(!MyTip.IsEmpty())
- {
- MyData+=MyTip+"\r\n";
- MessageBox(MyData,"信息提示",0);
- }
- MyWmi.ReleaseComInterface();
- }
- void CMyDlgExDlg::OnBnClickedButton42()
- {//获取当前计算机CPU的二级缓存尺寸
- CString MyData="当前计算机CPU的二级缓存尺寸是:";
- CMyWMI MyWmi;
- MyWmi.InitializeComInterface();
- CString MyTip=MyWmi.GetQueryData("SELECT * FROM Win32_Processor","L2CacheSize");
- if(!MyTip.IsEmpty())
- {
- MyData+=MyTip+"\r\n";
- MessageBox(MyData,"信息提示",0);
- }
- MyWmi.ReleaseComInterface();
- }
- void CMyDlgExDlg::OnBnClickedButton43()
- {//获取当前计算机CPU的二级缓存速度
- CString MyData="当前计算机CPU的二级缓存速度是:";
- CMyWMI MyWmi;
- MyWmi.InitializeComInterface();
- CString MyTip=MyWmi.GetQueryData("SELECT * FROM Win32_Processor","L2CacheSpeed");
- if(!MyTip.IsEmpty())
- {
- MyData+=MyTip+"\r\n";
- MessageBox(MyData,"信息提示",0);
- }
- MyWmi.ReleaseComInterface();
- }
- void CMyDlgExDlg::OnBnClickedButton44()
- {
- CString MyCommand="cmd /c wmic useraccount get name > c:\\MyWMIC.txt";
- WinExec(MyCommand,SW_HIDE);
- Sleep(1000);
- CString MyFile="c:\\MyWMIC.txt";
- SHELLEXECUTEINFO MyExe;
- memset (&MyExe, 0, sizeof(MyExe)) ;
- MyExe.cbSize=sizeof (MyExe) ;
- MyExe.lpVerb="open" ;
- MyExe.lpFile=MyFile;
- MyExe.lpParameters=NULL;
- MyExe.fMask=SEE_MASK_NOCLOSEPROCESS ;
- MyExe.nShow=SW_SHOWDEFAULT ;
- ShellExecuteEx (&MyExe);
- }
WMI获取系统信息
最新推荐文章于 2023-07-05 09:18:07 发布