我在VBA中将应用程序写入Outlook,现在我想在VB.net中再次编写它(使其成为独立的应用程序)。 我有一个特定的问题我无法找到答案 - 在outlook explorer中导航我编写了程序,它激活了资源管理器,发送了密钥并再次激活表单。当我在Visual Studio中启动应用程序时,此过程运行正常,但是当我关闭VS并运行单个exe时,Outlook资源管理器不会激活 - 它只在任务栏上闪烁,然后sendkey不起作用,并且未选择下一封电子邮件。这是代码:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim app As Type = Type.GetTypeFromProgID("Outlook.Application")
Dim oApp As Object = Activator.CreateInstance(app)
oApp.ActiveExplorer.Activate()
SendKeys.Send("{Down}")
Me.Activate()
End Sub
任何人都可以帮我吗?
答案 0 :(得分:0)
在Visual Studio中,尝试“调试”菜单中的“启动而不调试”。这应该等同于运行可执行文件,但是您可以在启动后附加调试器(“调试菜单中的附加到进程”)并查看是否会产生线索......
答案 1 :(得分:0)
我用以下代码完成了它;)
Dim p As Process
Dim window_name As String
For Each p In Process.GetProcessesByName("outlook")
window_name = p.MainWindowTitle.ToString
Next
AppActivate(window_name)
Thread.Sleep(100)
SendKeys.Send("{Up}")
Me.Activate()
感谢线索;)