• 复制程序,获取系统信息


    #include <stdio.h>
    #include <iostream>
    #include <windows.h>
    using namespace std;

    //复制当前运行的程序到系统目录下
    void CopySelf();
    //获取系统相关信
    void GetSysInfo();
    int main()
    {
    //CopySelf();
      GetSysInfo();
    return 0;
    }


    void CopySelf()
    {
         char szSelfName[MAX_PATH] = {0};
         char szWindowsPath[MAX_PATH] = {0};
         char szSystemPath[MAX_PATH] = {0};
         char szTmpPath[MAX_PATH] = {0};

         //获取当前程序自身路径
         GetModuleFileName(NULL,szSelfName,MAX_PATH);
         cout<<"szSelfName:"<<szSelfName<<endl;

         //获取系统目录
         GetWindowsDirectory(szWindowsPath,MAX_PATH);
         cout<<"szWindowsPath:"<<szWindowsPath<<endl;

         //获取windows目录
         GetSystemDirectory(szSystemPath,MAX_PATH);
         cout<<"szSystemPath:"<<szSystemPath<<endl;

         strcat(szWindowsPath,"\mynona.exe");
         strcat(szSystemPath,"\mynona.exe");

         //cout<<"szWindowsPath:"<<szWindowsPath<<endl;
         //cout<<"szSystemPath:"<<szSystemPath<<endl;

         int isTrue = CopyFile(szSelfName,szWindowsPath,FALSE);//FALSE表示强行覆盖原有文件
         int isTrue2 = CopyFile(szSelfName,szSystemPath,FALSE);

         cout<<"操作结果:"<<isTrue<<"  "<<isTrue2<<endl;
    }

    void GetSysInfo()
    {
         char szComputerName[MAXBYTE] = {0};
         char szUserName[MAXBYTE] = {0};
         unsigned long nSize = MAXBYTE;
         OSVERSIONINFO OsVer;

         OsVer.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
         GetVersionEx(&OsVer);

         if(OsVer.dwPlatformId == VER_PLATFORM_WIN32_NT)
         {
              if(OsVer.dwMajorVersion == 5 && OsVer.dwMinorVersion == 1)
              {
                   cout<<"Widows XP "<<OsVer.dwMinorVersion<<endl;
              }else if(OsVer.dwMajorVersion == 5 && OsVer.dwMinorVersion == 0)
              {
                   cout << "Windows 2K"<<endl;
              }else
              {
                   cout<<"Other System"<<endl;
              }

              GetComputerName(szComputerName,&nSize);
              cout<<"Computer Name is "<< szComputerName<<endl;

              nSize = MAXBYTE;
              GetUserName(szUserName,&nSize);
              cout<< "User Name is "<<szUserName<<endl;
                  
         }
        
    }
  • 相关阅读:
    【重大更新】Qlik Sense September 2018重磅发布(附下载)
    sharepoint多个NLB的web前段如何进行文件同步?
    通过组策略实现Firefox自动以当前域账号登录MOSS站点---(原创)
    EWS API 2.0读取日历信息-读取内容注意事项
    Dotfuscator混淆加密
    如何:在 SharePoint 中创建外部列表
    java学习笔记—HTTP协议(10)
    java学习笔记—Tomcat(9)
    java学习笔记DOM4J解析(7)
    php中mvc框架总结1(7)
  • 原文地址:https://www.cnblogs.com/mynona/p/3162641.html
Copyright © 2020-2023  润新知