当前位置:编程学习 > VB >>

求助!!!

我是想这样的  检测我目前打开的这些网页中又没有没有百度这个网页  如果没有就自动打开  打开后 再检测到被关闭了 就再次打开
--------------------编程问答--------------------

Option Explicit

Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Private Const SW_SHOWMAXIMIZED = 3

Sub Main()
    Dim objIE As Object
    Do
        If Not HasBaidu Then
            Set objIE = CreateObject("InternetExplorer.Application")
            objIE.Navigate2 "http://www.baidu.com"
            ShowWindow objIE.hwnd, SW_SHOWMAXIMIZED
        End If
        DoEvents
    Loop
End Sub

Function HasBaidu() As Boolean
    Dim SHApp As Object, SHWin As Object
    
    On Error Resume Next
    Set SHApp = CreateObject("Shell.Application")
    For Each SHWin In SHApp.windows
        If LCase(Right(SHWin.FullName, 12)) = "iexplore.exe" Then
            If InStr(1, SHWin.LocationURL, "www.baidu.com", vbTextCompare) Then
                HasBaidu = True
                Exit Function
            End If
        End If
    Next
    Set SHApp = Nothing
End Function
--------------------编程问答-------------------- 非常感谢 !可是我运行了你的程序 为什么什么都没有打开 ? --------------------编程问答-------------------- ??不会吧 --------------------编程问答-------------------- 什么原因呢啊 也没有提示出现错误就是什么反应都没有 正常我要是没有打开百度这个网页 是不是运行这个程序后就可以打开了  可是就是没有出来啊 --------------------编程问答--------------------
引用 2 楼 grace237 的回复:
非常感谢 !可是我运行了你的程序 为什么什么都没有打开 ?

新建标准模块,设置工程启动对象为Sub Main,然后再复制沙发的代码到模块里面. --------------------编程问答-------------------- 还是没有反应啊?真是着急啊怎么回事呢??
引用 5 楼 myjian 的回复:
引用 2 楼 grace237 的回复:
非常感谢 !可是我运行了你的程序 为什么什么都没有打开 ?

新建标准模块,设置工程启动对象为Sub Main,然后再复制沙发的代码到模块里面.
--------------------编程问答-------------------- lyserver的回复很专业 --------------------编程问答-------------------- ....... --------------------编程问答-------------------- 哪位好心人帮我试试 在你们的机器上好使不?  --------------------编程问答--------------------
'引用microsoft internet controls
Dim w As New shellwindows

Private Sub Form_Load()
Timer1.Interval = 1000
End Sub

Private Sub Timer1_Timer()
Dim obj As Object
Dim bl As Boolean
bl = False
For Each obj In w
If Trim(obj.LocationURL) = "http://www.baidu.com/" Then
bl = True
Exit For
End If
Next
If bl = False Then
openIE
End If
End Sub
Private Sub openIE()
Dim objIE As Object
Set objIE = CreateObject("InterNetExplorer.Application")
objIE.Navigate "http://www.baidu.com/"
objIE.Visible = True
End Sub
--------------------编程问答--------------------
引用 10 楼 syssz 的回复:
VB code'引用microsoft internet controlsDim wAsNew shellwindowsPrivateSub Form_Load()
Timer1.Interval=1000End SubPrivateSub Timer1_Timer()Dim objAsObjectDim blAsBoolean
bl=FalseForEach obj In wIfTrim(obj¡­
很好用! 非常感谢啊 呵呵!!
终于解决了我的问题  !谢谢回帖的所有人 呵呵 --------------------编程问答--------------------
补充:VB ,  网络编程
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,