日期:2014-01-24  浏览次数:20389 次


解决ASP.NET创建的线程的用户改变引发的"拒绝访问"错误
      

         ASP.NET创建的线程的用户由<identity impersonate="true"/> 改为NT AUTHORITY\NETWORK SERVICE, 引起"System.UnauthorizedAccessException","拒绝访问"



    Dim thr As Threading.Thread
    Dim l As System.Security.Principal.WindowsIdentity

    Function print()
        thr = New Threading.Thread(AddressOf printAutoCAD)
        thr.Start()
        l = System.Security.Principal.WindowsIdentity.GetCurrent
    End Function

    Private Sub printAutoCAD()
        System.Security.Principal.WindowsIdentity.Impersonate(l.Token)
 ...
    End Function