这是我的问题,我使用form1(我)与webbrowser显示自定义错误,我检查INI文件,看看我需要什么屏幕,我做一个navagate.webbrowser1和网址,我然后用webbrowser显示整个表单的表单。当我运行这个时,我得到一个黑屏或白色屏幕,或者前面没有任何表格我称之为在此过程中在后台安装打印机的程序。
我希望表单在前面,而另一个程序运行和fisnishes,这是我的程序的结束,这在网页上有一些动画,显示用户程序仍在运行,但我可以'得到表格出现。
这是我的代码:
'*********************************************************************************************
'this set the correct screen for Exit
'*********************************************************************************************
RBoot = reboot1
If RBoot = "True" Then
closeweb = "https://xxxxxxxxxxxxxxx/_report/enrollment.asp?page=completesuccess"
WebBrowser1.Navigate("https://XXXXXXXXXXXX/_report/enrollment.asp?page=completesuccess")
var1 = 0
Form9.Hide()
Form10.Hide()
Do Until var1 = 5
Me.Show()
Me.Refresh()
Thread.Sleep(400)
Loop
ElseIf RBoot = "False" Then
closeweb = "https://XXXXXXXXXXXXXX/_report/enrollment.asp?page=completenoreboot&name=" & computername
WebBrowser1.Navigate("https://XXXXXXXXXXXXXXX/_report/enrollment.asp?page=completenoreboot&name=" & computername)
var1 = 0
Form9.Hide()
Form10.Hide()
Do Until var1 = 5
Me.Show()
Me.Refresh()
Thread.Sleep(400)
Loop
End If
'*********************************************************************************************
' this runs the Printer Installer
'*********************************************************************************************
Dim Compini As String = My.Computer.FileSystem.ReadAllText("C:\temp\computerinfo.ini")
logg = "Computer Info INI:" & vbCrLf & Compini
Call logging()
If Compini.Contains("Printer") Then
If My.Computer.FileSystem.FileExists(current_DIR & "\ Printer Installer\Printerinstaller.exe") Then
Me.Show()
Dim printerinstall As New Process
printerinstall.StartInfo.FileName = current_DIR & "\Printer Installer\PrinterInstaller.exe"
printerinstall.StartInfo.Arguments = " -D C"
printerinstall.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
printerinstall.Start()
Try
While printerinstall.HasExited = False
Thread.Sleep(200)
Me.Show()
End While
Catch ex As InvalidOperationException
End Try
logg = "Ran " & current_DIR & "\Printer Installer\PrinterInstaller.exe"
Call logging()
Else
logg = "Can't Find " & current_DIR & "\Printer Installer\PrinterInstaller.exe"
Call logging()
WebBrowser1.Navigate("https://XXXXXXXXXXXXXXXX/_report/enrollment.asp?page=printerinstallernotfound&name=" & computername)
Form9.Hide()
Form10.Hide()
Me.Show()
Exit Sub
End If
Else
logg = "No Printer Selected and Printer Installer didn't run"
Call logging()
End If
答案 0 :(得分:0)
您可以将表单留在前面:
Form1.TopMost = True
你可以最小化形式:
Form1.WindowState = FormWindowState.Minimized
(如果您使用相同的表单,请将Form1
更改为Me
)
答案 1 :(得分:0)
为什么“closeweb”变量在那里?它似乎没有用处
您是否在其他地方重新使用'reboot1'?如果没有,为什么要在顶部更改变量名称?
考虑不要隐藏form9和form10 - 你确定那些不包含你要显示的内容吗?
删除循环,代码是不必要的 - 有更好的方法来完成你想要做的事情。尝试在没有循环的情况下在那里显示你的'我'形式,看看会发生什么(不刷新)
在打印机安装过程中,您将隐藏并再次显示表单。你应该给他们起名字,这样你就可以更好地追踪你在做什么。似乎所有这些隐藏和显示都会导致黑/白屏幕。