How can I check if I am using Outlook Classic or the new Outlook? - Stack Overflow

QuestionI want to implement drag and drop functionality for emails in my Visual Basic application. How

Question

I want to implement drag and drop functionality for emails in my Visual Basic application. However, the format of the dragged object differs depending on whether the user is using Outlook Classic or the new Outlook.

Possible Workaround

I could query the registry and check if UseNewOutlook exists, and based on that, decide which format to use. However, this feels more like a workaround rather than a long-term or clean solution.

Additionally, I do not want to determine the version by checking if the format of the dragged object is empty. My application will also have other features that depend on knowing the Outlook version upfront.

What I Need

Is there a reliable and clean way to check if the user is using Outlook Classic or the new Outlook, without relying on registry checks or object format detection?

I attempted to determine the Outlook version by reading from the Windows Registry:

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Outlook\Preferences
Field: UseNewOutlook

However, if the user has only installed the new Outlook, the UseNewOutlook field does not exist.

Question

I want to implement drag and drop functionality for emails in my Visual Basic application. However, the format of the dragged object differs depending on whether the user is using Outlook Classic or the new Outlook.

Possible Workaround

I could query the registry and check if UseNewOutlook exists, and based on that, decide which format to use. However, this feels more like a workaround rather than a long-term or clean solution.

Additionally, I do not want to determine the version by checking if the format of the dragged object is empty. My application will also have other features that depend on knowing the Outlook version upfront.

What I Need

Is there a reliable and clean way to check if the user is using Outlook Classic or the new Outlook, without relying on registry checks or object format detection?

I attempted to determine the Outlook version by reading from the Windows Registry:

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Outlook\Preferences
Field: UseNewOutlook

However, if the user has only installed the new Outlook, the UseNewOutlook field does not exist.

Share Improve this question asked Mar 11 at 9:59 isnteerisnteer 31 bronze badge
Add a comment  | 

1 Answer 1

Reset to default 0

The two Outlooks have nothing but name in common. The formats they expose are also very different: classic Outlook exposes MSG files, new Outlook - EML (MIME) files. And as of today (March 2025), new Outlook will error out when you try to read the drag/drop data, so you cannot even access the message content in any format.

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1744803012a4594606.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信