1

Тема: VBS: проверка электронной почты

Взял с форума скрипт проверки почты. При начале работы открывается окно InternetExplorer, далее осуществляется вход. А нельзя чтобы проверка осуществлялась в скрытом режиме, т.е. чтобы не открывалось окно InternetExplorer, и разве не для этого определяется свойство Visible = False, а если для этого, почему у меня оно не работает?

Option Explicit
Dim objIE
Dim objForm
Dim collLinks
Dim objLink
Dim strNewMessagesCount
Dim lngNewMessagesCount

Set objIE = WScript.CreateObject("InternetExplorer.Application")

With objIE
    .Visible = False
    .Navigate "http://win.mail.ru/"
    
    Do 
        WScript.Sleep 100
    Loop While .Busy
    
    Set objForm = .Document.forms("Auth")
    
    With objForm
        .elements("Login").value = "login"
        .elements("Domain").value = "mail.ru"
        .elements("Password").value = "pass"
        
        .submit()
    End With
    
    Do
        WScript.Sleep 100
    Loop While .Busy
    
    Set collLinks = objIE.document.getElementsByTagName("A")
    
    For Each objLink In collLinks
        If objLink.innerText = "Входящие" Then
            strNewMessagesCount = objLink.parentNode.nextSibling.innerText
            
            If IsNumeric(Trim(strNewMessagesCount)) Then
                lngNewMessagesCount = CLng(strNewMessagesCount)
            Else
                lngNewMessagesCount = 0
            End If
            
            If lngNewMessagesCount <> 0 Then
                If MsgBox("Есть новые сообщения в папке Входящие: " & CStr(lngNewMessagesCount) & " шт." & vbCrLf & _
                    vbCrLf & _
                    "Показать новые сообщения из папки Входящие в окне Internet Explorer?", _
                    vbYesNo + vbInformation + vbDefaultButton1 + vbSystemModal, _
                    "Есть новые сообщения") = vbYes Then
                    
                    objLink.click
                    
                    Do 
                        WScript.Sleep 100
                    Loop While .Busy
                    
                    .Visible = True
                End If
            End If
            
            Exit For
        End If
    Next
End With

If Not objIE.Visible Then
    Set objIE = Nothing
End If

WScript.Quit 0

2

Re: VBS: проверка электронной почты

Ага, дошло. Окно будет открываться если уже открыто другое окно IE. И это видимо уже никак не исправить.

3

Re: VBS: проверка электронной почты

amgmail, под IE6 работает ровно как и заявлено. У Вас какая версия IE?