WebBrowser操作多个“同网站帐号”导致Cookie覆盖的问题,高手来分析下!
写这个程序的目的:有多个淘宝店铺需要管理,
如果开2个IE,先登录第1个帐号,再登录第2个帐号,回去操作第1个帐号时候,就会变成第2个帐号的
经过研究发现,VB制作浏览器,编译成多个独立EXE的WebBrowser浏览器,Cookie不会覆盖,
比如编译成1.exe 、 2.exe 、 3.exe 这样就可以同时管理3个淘宝店铺
但是觉得这种方式比较土····
能否在1个EXE里搞定??(试验发现:1个exe里,多个WebBrowser是行不通的,Cookie会覆盖)
[解决办法]
同一个 exe 共享 cookie 这是 IE 内核的规则,除非你不用 WebBrowser 开发。
这是上个帖子的讨论。
你测试下来到底是 exe 文件名不同就可以多账号登录,还是必须工程名也不同的才可以?
如果是前者,那么只要将浏览器的 exe 文件复制成一个不同文件名的就可以了,不用多次编译。
编写两个程序:
1)浏览器
1.exe
2)管理程序
在相同目录下
Option Explicit'用新帐号登录'Private Sub Command1_Click() Dim i As String Dim sBrowserExe As String For i = 2 To 100 sBrowserExe = App.Path & "\" & i & ".exe" If Dir(sBrowserExe) = vbNullString Then Timer1.Enabled = False FileCopy App.Path & "\1.exe", sBrowserExe Shell sBrowserExe, vbNormalFocus Timer1.Enabled = True Exit Sub End If NextEnd SubPrivate Sub Form_Load() Timer1.Interval = 1000End Sub'定时删除不运行的浏览器'Private Sub Timer1_Timer() Dim i As String Dim sBrowserExe As String For i = 2 To 100 sBrowserExe = App.Path & "\" & i & ".exe" If Dir(sBrowserExe) <> vbNullString Then On Error Resume Next Kill sBrowserExe '正在运行的程序无法删除' On Error GoTo 0 End If NextEnd Sub