国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

asp.net訪問網絡路徑方法(模擬用戶登錄)

2024-07-10 13:27:58
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了asp.net訪問網絡路徑方法,其實就是模擬用戶登錄,需要的朋友可以參考下
 
 

核心代碼:

public class IdentityScope : IDisposable{    // obtains user token    [DllImport("advapi32.dll", SetLastError = true)]    static extern bool LogonUser(string pszUsername, string pszDomain, string pszPassword,int dwLogonType, int dwLogonProvider, ref IntPtr phToken);    // closes open handes returned by LogonUser    [DllImport("kernel32.dll", CharSet = CharSet.Auto)]    extern static bool CloseHandle(IntPtr handle);    [DllImport("Advapi32.DLL")]    static extern bool ImpersonateLoggedOnUser(IntPtr hToken);    [DllImport("Advapi32.DLL")]    static extern bool RevertToSelf();    const int LOGON32_PROVIDER_DEFAULT = 0;    const int LOGON32_LOGON_NEWCREDENTIALS = 9;//域ò控?中D的?需è要a用?:Interactive = 2    private bool disposed;    /// <summary>    /// 登?錄?    /// </summary>    /// <param name="sUsername">用?戶§名?</param>    /// <param name="sDomain">域ò名?,?如?果?不?在ú域ò中D就í使1用?機ú器÷IP地?址·</param>    /// <param name="sPassword">密ü碼?</param>    public IdentityScope(string sUsername, string sDomain, string sPassword)    {      // initialize tokens      IntPtr pExistingTokenHandle = new IntPtr(0);      IntPtr pDuplicateTokenHandle = new IntPtr(0);      try      {        // get handle to token        bool bImpersonated = LogonUser(sUsername, sDomain, sPassword,LOGON32_LOGON_NEWCREDENTIALS, LOGON32_PROVIDER_DEFAULT, ref pExistingTokenHandle);        if (true == bImpersonated)        {          if (!ImpersonateLoggedOnUser(pExistingTokenHandle))          {            int nErrorCode = Marshal.GetLastWin32Error();            throw new Exception("ImpersonateLoggedOnUser error;Code=" + nErrorCode);          }        }        else        {          int nErrorCode = Marshal.GetLastWin32Error();          throw new Exception("LogonUser error;Code=" + nErrorCode);        }      }      finally      {        // close handle(s)        if (pExistingTokenHandle != IntPtr.Zero)          CloseHandle(pExistingTokenHandle);        if (pDuplicateTokenHandle != IntPtr.Zero)          CloseHandle(pDuplicateTokenHandle);      }    }    protected virtual void Dispose(bool disposing)    {      if (!disposed)      {        RevertToSelf();        disposed = true;      }    }    public void Dispose()    {      Dispose(true);    }  }

第二個參數是域名,有域名的話寫域名,沒有域名寫目標機器的IP就可以了

using (IdentityScope c = new IdentityScope("administrator", "192.168.0.1", "11111")){ string[] filelist = System.IO.Directory.GetDirectories(@"//192.168.0.1/folderName");}
 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大埔区| 张家界市| 太湖县| 汽车| 全椒县| 昌图县| 沧州市| 紫云| 惠安县| 兰州市| 营口市| 托克托县| 宜昌市| 卫辉市| 前郭尔| 清水河县| 杭锦旗| 克什克腾旗| 白朗县| 临澧县| 大余县| 永济市| 蒙山县| 红桥区| 新安县| 芒康县| 靖州| 开阳县| 乳源| 道孚县| 石棉县| 邻水| 格尔木市| 驻马店市| 蕉岭县| 郓城县| 静宁县| 阿巴嘎旗| 杨浦区| 呼图壁县| 垣曲县|