本段代码是在前年编写的一个集团OA工具中用到的,当时的情景是利用Winform程序实现OA的登陆以及消息推送协议。处理代办和代阅的时候由于当时协议比较复杂所以没有进行WinForm版的实现,只能跳转。但是跳转不可能重新登陆,所以才会有一下这段代码。个人觉得还是比较不错的,以后应该会用到。
设置系统的Cookie主要用到的是wininet.dll模块:
wininet.dll
wininet.dll是Windows应用程序网络相关模块。
[code lang=”csharp”]///
///
/// /// /// ///
[DllImport(“wininet.dll”, CharSet = CharSet.Auto, SetLastError = true)]
public static extern bool InternetSetCookie(string lpszUrlName, string lbszCookieName, string lpszCookieData);
///
///
/// /// /// /// ///
[DllImport(“wininet.dll”, CharSet = CharSet.Auto, SetLastError = true)]
public static extern bool InternetGetCookie(string lpszUrlName, string lbszCookieName, StringBuilder lpszCookieData, ref int lpdwSize);
///
///
///
[DllImport(“kernel32.dll”)]
public static extern Int32 GetLastError();[/code]
上面的定义已经出来了,下面主要是用法:
[code lang=”csharp”]InternetSetCookie(“http://office.**********.com/”, “LKS_CurUser”, “asdasdasdasd;expires=Sun,22-Feb-2099 00:00:00 GMT”);//设置登录用户的Cookie并设置时间,让它成为可传递的永久Cookie[/code]
注意:使用时请注意控制Cookie的有效时长,避免留下安全隐患。
本博客所有文章如无特别注明均为原创
如果觉得对你有帮助,可以通过下方打赏对作者表示鼓励
本文采用知识共享署名-非商业性使用-相同方式共享
如若转载,请注明出处:《C# 设置系统Cookie,可用于程序登陆后免登陆跳转到WEB》https://www.fangsi.net/390.html