Visual studio 使用Visual Studio 2013创建Outlook加载项(使用ItemSend)
我想要一个简单的outlook插件,在用户发送电子邮件之前询问他。实际上,我的代码可以编译,但不起作用。你有什么想法吗 谢谢Visual studio 使用Visual Studio 2013创建Outlook加载项(使用ItemSend),visual-studio,visual-studio-2013,outlook,outlook-addin,Visual Studio,Visual Studio 2013,Outlook,Outlook Addin,我想要一个简单的outlook插件,在用户发送电子邮件之前询问他。实际上,我的代码可以编译,但不起作用。你有什么想法吗 谢谢 Public Class ThisAddIn Public WithEvents myOlApp As Outlook.Application Event ItemSend As AssemblyLoadEventHandler Public Sub Initialize_handler() myOlApp = Me.Application End Sub P
Public Class ThisAddIn
Public WithEvents myOlApp As Outlook.Application
Event ItemSend As AssemblyLoadEventHandler
Public Sub Initialize_handler()
myOlApp = Me.Application
End Sub
Private Sub ThisAddIn_Startup(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Startup
Initialize_handler()
End Sub
Private Sub ThisAddIn_Shutdown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Shutdown
End Sub
Private Sub myOlApp_ItemSend(ByVal Item As Object, ByRef Cancel As Boolean)
Dim prompt As String
prompt = "Are you sure you want to send " & Item.Subject & "?"
If MsgBox(prompt, vbYesNo + vbQuestion, "Sample") = vbNo Then
Cancel = True
End If
End Sub
结束类您对myOlApp\u ItemSend的声明必须包括“句柄”:
你的代码执行了吗?你能设置一个断点并让VS停止在那里吗?没有myOlApp_ItemSend不会执行。最后一个断点是:“myOlApp=Me.Application”非常确定我有相同的问题,但它表示签名(
Public Sub
和Private Event
没有兼容的签名,这似乎很明显,但我不确定我需要在哪里更改内容(?)啊-没关系,我认为我只是在Cancel上有一个byval而不是byref…啊,继承的代码。。。
Private Sub myOlApp_ItemSend(ByVal Item As Object, ByRef Cancel As Boolean) Handles myOlApp.ItemSend