Outlook 2003 plug-in Rich Text Box not receiving certain keystrokes

M

Michael Fox

Hi, I've developed an Outlook 2003 plug-in that attaches itself to
message compose window. It's a VSTO plug-in written in C# on .Net 3.
using VS 2008.

Visually, the plug-in adds an extra rich text box and a few othe
controls(mostly text formatting for the Rich Text Box) to the bottom o
the Outlook compose window.

The issue that I am having is that certain keystrokes are bein
"hijacked" from from the Rich Text box (which has focus) and bein
responded to by the main compose text area. I have isolated th
following details:

1. Text entry occurs normally.

2. Backspace, Delete, left and right arrow keys (and possibly others
are "hijacked" and cause the appropriate effect in the MAIN compos
area. Focus remains on my Rich Text control.

3. Spy++ reports that the Rich Text Box receives a WM_KEYDOWN and
WM_KEYUP event, but the event handler for the Rich Text Box only show
a WM_KEYUP.

4. If another text entry area on the main compose window is selecte
before selecting my Rich Text Box, then my rich text Box function
normally (and incidentally, receives a WM_CHAR event when Backspace i
pressed, in addition to the WM_KEYDOWN and WM_KEYUP)

5. This ONLY occurs when the composer is in HTML compose mode, and doe
not occur when the composer is set to compose either Rich Text or Plai
text.

6. The Main compose text area is NOT receiving the WM_CHAR, WM_KEYUP o
WM_KEYDOWN events even though it is apparently responding to them.

I was able to extend the Compose Window's WndProc, but was not able t
intercept any messages at that level that were relevant to the proble
I was having.

The behavior I have seen suggests that this is a bug in the InProc HTM
composer, which apparently is some IE provided control. Any hel
resolving this would be very much appreciated
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top