{"id":390,"date":"2012-04-19T07:40:41","date_gmt":"2012-04-19T12:40:41","guid":{"rendered":"http:\/\/www.exchangedefender.com\/blog\/2012\/04\/outlook-2007-smtp-security-add-in-fixed\/"},"modified":"2018-03-13T10:34:09","modified_gmt":"2018-03-13T15:34:09","slug":"outlook-2007-smtp-security-add-in-fixed","status":"publish","type":"post","link":"https:\/\/www.exchangedefender.com\/blog\/2012\/04\/outlook-2007-smtp-security-add-in-fixed\/","title":{"rendered":"Outlook 2007 SMTP Security Add-in (Fixed)"},"content":{"rendered":"<p><a href=\"http:\/\/www.exchangedefender.com\/blog\/media\/Outlook-2007-SMTP-Security-Add-in-Fixed_7839\/2007.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-right-width: 0px; margin: 0px 0px 4px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px\" title=\"2007\" border=\"0\" alt=\"2007\" align=\"right\" src=\"http:\/\/www.exchangedefender.com\/blog\/media\/Outlook-2007-SMTP-Security-Add-in-Fixed_7839\/2007_thumb.png\" width=\"250\" height=\"65\"><\/a>Here at<b> <\/b><a href=\"http:\/\/exchangedefender.com\/\"><b>ExchangeDefender<\/b><\/a>, we have finally resolved the issue with our <b>Outlook 2007 SMTP Security add-in<\/b>. This project has been a thorn in our side for quite some time and I\u2019m proud to announce that our development team has finally got it working! We spent the good part of the week going over and over Outlook 2007 &amp; 2010 documentation and implementation methods for Outlook controls. After hours and hours of troubleshooting and testing new scenarios we\u2019ve finally got all the pieces to fit together correctly. <b><i>I\u2019ll briefly describe the development cycle of this project, to help enlighten those who think bugs\/feature requests get brushed aside and forgotten about.<\/i><\/b><i> <\/i> <\/p>\n<p>Our original Outlook 2007 add-in was created years ago and was at a time where Outlook add-ins weren\u2019t really <b>supported<\/b> <b>NATIVELY<\/b>. So part of the conflict was restructuring our code to take advantage of the <b>native Office 2010 hooks<\/b>, since they are backwards compatible for 2007. We had to phase out all of our old methods that had a heavy dependence on a 3<sup>rd<\/sup> party Outlook .dll called (<i>Redemption<\/i>). That was our first hurdle.  <\/p>\n<p>Then we found out while everything would compile without any conflict, the add-in still wouldn\u2019t load correctly inside of the Outlook application. So we went back to the drawing board and examined what was happening on a lower level. <b><i>To our surprise, the compiler (Visual Studio 2010) kept replacing the Outlook 2007 included references with the newest 2010 files.<\/i><\/b> This was completely unexpected and unwarranted behavior in comparison to what we were expecting. So to keep things on par, we moved the development environment to a virtual machine running <b><i>Windows XP, Office 2007 &amp; Visual Studio 2010<\/i><\/b>. This resolved the conflict of Visual Studio fetching incorrect .dll files and replacing them at compile time. <\/p>\n<p><i>Perfect right? Everything should work\u2026<\/i><\/p>\n<blockquote>\n<p>Nope, the next issue was the worst! The add-in would not load and didn\u2019t generate any errors\u2026<\/p>\n<p><b>A developer\u2019s worst nightmare:<\/b> <i>Trying to figure out what\u2019s wrong with absolutely nothing to formulate a reason for the failure. <\/i>We\u2019ll apparently there was a slight conflict between the old way of handling the .manifest file and loading the ribbon controls. So after we tweaked the registry controls and load behaviors, we then rewrote some of the ribbon controls to support the newest version of VSTO. <b>That\u2019s when things started to work!!!<\/b> <\/p>\n<\/blockquote>\n<p>So, as you should be able to conclude, it was no walk in the park. We would have loved to get this working a very long time ago, but at the time we simply didn\u2019t have the time or resources to address the issue directly.  <\/p>\n<p>Hank Newman<br \/>VP Development, ExchangeDefender<br \/>hank@ownwebnow.com  <\/p>\n","protected":false},"excerpt":{"rendered":"<p> [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-390","post","type-post","status-publish","format-standard","hentry","category-exchangedefender"],"_links":{"self":[{"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/posts\/390","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/comments?post=390"}],"version-history":[{"count":1,"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/posts\/390\/revisions"}],"predecessor-version":[{"id":1349,"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/posts\/390\/revisions\/1349"}],"wp:attachment":[{"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/media?parent=390"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/categories?post=390"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/tags?post=390"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}