J'ai finalement trouvé une solution simple en utilisant Outlook VBA et un simple EXE.
Voici comment ne plus jamais manquer un rendez-vous dans Outlook.
Pourquoi une application exe autonome à cette fin ? Eh bien, j'avais la grande boîte rouge intégrée dans le VBA, mais cette solution était pleine de problèmes (je crois que c'est parce que je dois utiliser hwnd et d'autres propriétés inhabituelles du système pour garder la grande boîte rouge en haut) . Donc, pour simplifier les choses, pourquoi ne pas créer un EXE de base qui ne fait qu'une seule chose. Vous pouvez utiliser les outils gratuits de Microsoft (Visual studio Community 2015 est gratuit).
Voici le code EXE. Application simple de formulaire Windows avec un seul formulaire. Compilez ce code.
Imports System.Timers
Public Class Form1
Dim tTimer As New Timer
Public Sub New()
InitializeComponent()
Me.StartPosition = Windows.Forms.FormStartPosition.CenterScreen
Me.TopMost = True
Me.TopLevel = True
End Sub
Private Sub Form1_DoubleClick(sender As Object, e As EventArgs) Handles Me.DoubleClick
Application.Exit()
End Sub
Private Sub Form1_Shown(sender As Object, e As EventArgs) Handles Me.Shown
flashingQuick()
End Sub
Sub flashingQuick()
tTimer.Start()
AddHandler tTimer.Elapsed, New ElapsedEventHandler(AddressOf TimerTick)
End Sub
Sub TimerTick(ByVal source As [Object], ByVal e As ElapsedEventArgs)
Dim theTimer As System.Timers.Timer = DirectCast(source, System.Timers.Timer)
theTimer.Interval = 500
theTimer.Enabled = True
If Me.BackColor = System.Drawing.SystemColors.Control Then
Me.BackColor = Color.Red
Else
Me.BackColor = System.Drawing.SystemColors.Control
End If
End Sub
End Class
Et c'est tout ce dont j'ai besoin dans le VBA d'Outlook. Mettez ceci dans ThisOutlookSession
Private Sub Application_Reminder(ByVal Item As Object)
On Error Resume Next
If Item.MessageClass <> "IPM.Appointment" Then
Exit Sub
End If
Dim sAPPData As String
Dim sFileName As String
sAPPData = Environ("AppData")
sFileName = "\Microsoft\Windows\Start Menu\Programs\BigRedBox\BigRedBox.exe"
If Dir(sAPPData & sFileName) <> "" Then
Call Shell(sAPPData & sFileName)
End If
End Sub
18 votes
C'est tellement nécessaire. Si l'on tombe dans une concentration intense, il est très facile de manquer un rappel et de le remarquer sous d'autres fenêtres seulement après avoir été en retard. Il est ridicule que cela ne soit pas possible avec un simple réglage. À quoi sert un rappel si vous ne l'obtenez pas rapidement !