• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            zhiye_wang

            向星空仰望的越深,越發現自己的渺小

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              31 隨筆 :: 1 文章 :: 2 評論 :: 0 Trackbacks
            調用API函數NetShareAdd()將文件夾設置為共享,調用此函數后如果不做其他設置,網絡用戶是無法訪問共享文件夾的,因為此文件夾在NTFS分區中,同時受到NTFS文件系統的訪問控制,因此還需要第2步;
            調用DOS命令cacls,賦予Guest用戶組讀寫權限;
            如果要取消文件共享,直接調用API函數NetShareDel()

            對于FAT32分區中文件夾,cacls命令是不起作用的,這個命令專用于NTFS格式下的文件和文件夾。也就是說上面這種解決方法的第步不能用了,那么現在只能使用NetShareAdd()函數添加文件共享。調用此函數后如果不做其他設置,網絡用戶可以訪問共享文件夾,但擁有完全控制權限(這是默認的共享權限設置),而在實際項目中我們希望能夠編程控制讀寫權限。在NTFS分區中,我們還有NTFS文件系統的訪問控制功能罩著,在FAT32分區中就只能依賴于操作系統文件夾共享自身的權限設置功能了。
             1NET_API_STATUS NetShareAdd(
             2_In_   LPWSTR servername,
             3_In_   DWORD level,
             4_In_   LPBYTE buf,
             5_Out_  LPDWORD parm_err
             6);
             7typedef struct _SHARE_INFO_2 {
             8LPWSTR shi2_netname;
             9DWORD  shi2_type;
            10LPWSTR shi2_remark;
            11DWORD  shi2_permissions;
            12DWORD  shi2_max_uses;
            13DWORD  shi2_current_uses;
            14LPWSTR shi2_path;
            15LPWSTR shi2_passwd;
            16}
             SHARE_INFO_2, *PSHARE_INFO_2, *LPSHARE_INFO_2;

            addShare.cpp

             1// 說明:
             2// FAT 系統調用此函數,shi502_permissions參數無效。有且僅有共享權限為最高權限。
             3// NTFS 系統調用此函數,請修改shi502_permissions參數,可使用如下權限:
             4// ACCESS_READ, ACCESS_WRITE, ACCESS_CREATE, ACCESS_EXEC
             5// ACCESS_DELETE, ACCESS_ATRIB, ACCESS_PERM, ACCESS_ALL
             6BOOL addShare(LPTSTR lpShareName, LPTSTR lpShareDir)
             7{
             8NET_API_STATUS res;
             9SHARE_INFO_502 p;
            10 
            11p.shi502_netname = lpShareName; //共享名
            12p.shi502_type = STYPE_DISKTREE; 
            13p.shi502_remark = NULL;
            14p.shi502_permissions = ACCESS_ALL;
            15p.shi502_max_uses = SHI_USES_UNLIMITED; //最大鏈接數
            16p.shi502_current_uses = 0;
            17p.shi502_path = lpShareDir; //需要共享的路徑
            18p.shi502_passwd = NULL;
            19p.shi502_reserved = 0;
            20p.shi502_security_descriptor = NULL;
            21 
            22res = NetShareAdd(NULL, 502, (LPBYTE)&p, NULL);
            23 
            24if (NERR_Success == res)
            25{
            26printf("Share created.\n");
            27}

            28else
            29{
            30printf("NetShareAdd error: %u\n", res);
            31}

            32return (res==NERR_Success);
            33}

            34

            delShare.cpp
             
             1BOOL delShare(LPTSTR lpShareName)
             2{
             3    NET_API_STATUS res;
             4    //TCHAR szShareName[256] = "TestShare";
             5    //TCHAR szShreDir[256] = "F:\\Media";
             6    res = NetShareDel(NULL, (LMSTR)lpShareName, 0);
             7    if (NERR_Success == res)
             8    {
             9        printf("NetShareDel ok.\n");
            10    }

            11    else
            12    {
            13        printf("NetShareDel error: %u\n", res);
            14        if (ERROR_ACCESS_DENIED == res)
            15        {
            16            printf("The user does not have access to the requested information.\n");
            17        }

            18        if (NERR_NetNameNotFound == res)
            19        {
            20            printf("The share name does not exist.\n");
            21        }

            22    }

            23    return (res==NERR_Success);
            24}

            posted on 2014-12-23 17:53 zhiye_wang 閱讀(284) 評論(0)  編輯 收藏 引用 所屬分類: windows
            国内精品伊人久久久久网站| 久久国语露脸国产精品电影| 99久久国产主播综合精品| 国产成人香蕉久久久久| 亚洲а∨天堂久久精品| 久久精品毛片免费观看| 久久精品二区| 久久亚洲中文字幕精品有坂深雪 | 久久人做人爽一区二区三区 | 国产精品热久久毛片| 久久久SS麻豆欧美国产日韩| 久久99精品国产| 无码精品久久久天天影视| 国产激情久久久久影院老熟女免费 | 久久www免费人成看国产片| 日韩人妻无码精品久久免费一 | 一本久久久久久久| 久久永久免费人妻精品下载| 亚洲日本久久久午夜精品| 久久综合丁香激情久久| 性欧美大战久久久久久久久| 久久久久久久综合日本| 99久久精品免费观看国产| 69SEX久久精品国产麻豆| 久久久久亚洲精品日久生情| 久久综合精品国产一区二区三区| 99久久这里只有精品| 久久国产精品99精品国产| 国内精品伊人久久久久777| 亚洲国产小视频精品久久久三级| 国产成人精品久久一区二区三区av | 久久综合九色综合欧美狠狠| 国产午夜精品久久久久免费视| 久久久亚洲裙底偷窥综合| 欧美激情一区二区久久久| 国内精品伊人久久久久妇| 久久久久久久精品成人热色戒| 亚洲一区精品伊人久久伊人 | 91久久精品无码一区二区毛片| 国产精品久久久久久福利69堂| 精品一区二区久久|