问题
I try to write to a remote machine with the following code:
StreamWriter(@"\\" + remoteMachine + "\\admin$\\" + fileName);
i get the following error Logon failure: unknown user name or bad password.
i got the user name, domain and password. how can i write with credentials?
if i already been to that computer in this session there is no problem, but if it's a new session the computer doesn't recognize the location
how can i write with credentials?
回答1:
You'll need to impersonate the identity before using the StreamWriter
. WindowsIdentity.Impersonate Method article has a great example of doing so.
Inside this code you would use the StreamWriter
:
using (WindowsImpersonationContext impersonatedUser = newId.Impersonate()) {
StreamWriter(@"\\" + remoteMachine + "\\admin$\\" + fileName);
}
来源:https://stackoverflow.com/questions/6829432/using-streamwriter-on-server-in-c-sharp