C++ 磁盤映射

C++ 執行 cmd 命令使用 system 函數,執行成功,函數返回值爲 0,失敗返回值爲 非零值。

如果磁盤已經映射,再次映射,會拋錯,所以,在程序退出之前需要刪除磁盤映射。

 

磁盤映射命令:

net use z: "ServerURL" "/user:ServerUser" ServerPassword

z: 後面需要一個空格

 

刪除磁盤映射命令:

net use z: /del /yes

 

system 函數的參數是一個 const char * 類型

如果在程序中傳遞命令串的參數是 CString 類型,需要將 CString 類型轉換成 const char * 類型

如果在 VC++ 環境下,字符集是 unicode, 將 CString 類型轉換成 const char * 類型的方法如下:

CString strCommend = _T("net use z: \"ServerURL\" \"/user:ServerUser\" ServerPassword"); //這時候引號中的引號需要轉義
 char strParam[256] = {0};
 wcstombs(strParam, strCommend, strCommend.GetLength());
 const char * pCommend = strParam;
 int ret = system(pCommend);
 if ( 0 == ret)
  return TRUE;
 else
  return FALSE;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章