zoukankan      html  css  js  c++  java
  • VC 获取Windows所有用户的用户名

    #include <LMACCESS.H>
    #include <LMERR.H>
    #include <LMAPIBUF.H>

    #include <iostream>

    #include <vector>

    using namespace std;

    vector<CString> m_account;

    GetOSUserName()
    {
       LPUSER_INFO_1 pBuf = NULL; 
       LPUSER_INFO_1 pTmpBuf ; 
       DWORD dwLevel   =  1; 
       DWORD dwPrefMaxLen  = -1; 
       DWORD dwEntriesRead  =  0; 
       DWORD dwTotalEntries =  0; 
       DWORD dwResumeHandle =  0; 
       NET_API_STATUS nStatus; 
       LPTSTR pszServerName = NULL; 
       nStatus = NetUserEnum( (LPCWSTR) pszServerName , dwLevel , FILTER_NORMAL_ACCOUNT ,
        (LPBYTE*)&pBuf, dwPrefMaxLen , &dwEntriesRead , &dwTotalEntries , &dwResumeHandle );  
       if( ( nStatus == NERR_Success ) || ( nStatus == ERROR_MORE_DATA ) ) 
       { 
          if( ( pTmpBuf=pBuf )!=NULL ) 
          { 
             for( DWORD i = 0; i < dwEntriesRead ; ++i ) 
             { 
                CString csFlag;
                csFlag.Format( _T( "%s,%ld" ) , pTmpBuf->usri1_name , pBuf->usri1_priv );
                if( pTmpBuf->usri1_priv == USER_PRIV_ADMIN  ||  pTmpBuf->usri1_priv == USER_PRIV_USER  &&
                   ( CString ( pTmpBuf->usri1_name ) != "ASPNET" ) )
                {
                   m_account.push_back( (CString) pTmpBuf->usri1_name );     
                }
                pTmpBuf++; 
             } 
          } 
      
       } 
       else 
       { 
          ::MessageBox( NULL , _T("A system error has occurred") , _T("ERROR") , MB_OK );
       }  
       if( pBuf != NULL ) 
       { 
          NetApiBufferFree( pBuf ); 
          pBuf = NULL; 
       }  
       while ( nStatus == ERROR_MORE_DATA ); 
       if (pBuf != NULL) 
         NetApiBufferFree( pBuf );  
    }

  • 相关阅读:
    OGG for sqlserver engryption && insert/delete
    MySQL中SQL_CALC_FOUND_ROWS的用法
    VMWARE 虚拟机新增硬盘,格式化分区,并挂载
    Mycat实战之数据迁移(oracle -- mysql)
    MYCAT实战之分片迁移
    mycat实战之性能测试
    Mycat实战之主键数据库自增方式
    对象的创建与克隆
    c#调用c++的dll,错误篇
    java 模拟消息的发送功能
  • 原文地址:https://www.cnblogs.com/pbreak/p/1806279.html
Copyright © 2011-2022 走看看