{"id":184,"date":"2010-11-21T16:28:38","date_gmt":"2010-11-21T16:28:38","guid":{"rendered":"http:\/\/www.slyman.org\/blog\/?p=184"},"modified":"2013-06-07T09:49:41","modified_gmt":"2013-06-07T09:49:41","slug":"64-bit-windows-7office-2010-migration-experiences","status":"publish","type":"post","link":"https:\/\/slyman.org\/blog\/2010\/11\/64-bit-windows-7office-2010-migration-experiences\/","title":{"rendered":"64-bit Windows &#038; Office 2010 migration"},"content":{"rendered":"<p><a title=\"Microsoft TechNet: Feature comparison, Office 2010 vs. Office 2007\" href=\"http:\/\/technet.microsoft.com\/en-us\/library\/cc178980.aspx\" target=\"_blank\">Office 2010 (especially 64-bit version) represents a major upgrade from 2007<\/a>&#x2014;Microsoft&#8217;s new investments ensure that even veteran Office 2007 users will gain significant benefits by upgrading to Office 2010.&nbsp; As a consultant software developer with several MS Office based solutions in situ, I decided to upgrade early to get a headstart on making our software fully compatible with the new Windows\/ Office.&nbsp; My first foray into Office 2010 involved the 32-bit BETA version in a virtual-machine sandbox.&nbsp; Current experiences are with the full, <span title=\"Installed November 2010, several months AFTER official R.T.M., since I wasn't brave or foolish enough to attempt this earlier.\">official 64-bit version<\/span>; running in my production environment with all the data, deadlines and details of my regular work.<\/p>\n<h2>Pros<\/h2>\n<ul>\n<li><strong>Outlook 2010<\/strong>: Cleaner, simpler user interface&#x2014;more practical and business-like.<\/li>\n<li><strong>Access 2010<\/strong>: Compelling new features, including auto-complete intellisense in query design view.&nbsp; Access 2010 supports table-based triggers (&#8220;data macros&#8221;), which are a good idea in principle but not directly upgradeable to SQL Server triggers.&nbsp; The MS Access platform is now more user-friendly, consistent and ergonomic; and perhaps also more stable.<\/li>\n<li><strong>64-bit Office<\/strong>: &gt;2 GB files, except for in MS Access files: I tested Access 2010 64-bit to its limits with some scientific data and found that Access 2010 64-bit still has a 2GB file size limit.&nbsp; VBA7 has 64-bit arithmetic datatypes, but the Access database engine does not yet have native formats for 64-bit integer columns.&nbsp; If you require 64-bit arithmetic or addressing in MS Office e.g. for scientific purposes, 64-bit SQL Server interfaced via ODBC from 64-bit VBA7 is probably the right solution for you (see first two comments at foot of this article); otherwise you should take a closer look at Excel 2010 to see if that will meet your needs.<\/li>\n<li><strong>Software developers should migrate a little earlier<\/strong> than their clients (migrating to a 64-bit environment means you can test for 64-bit compatibility, and you can get the best of both worlds by running a 32-bit testing environment inside Microsoft Windows Virtual PC.)&nbsp; <strong>However<\/strong>, beware of upgrading to Access 2010 for your development platform if you must deploy to Access 2007, and if you might perform &ldquo;compact and repair&rdquo; operations during development (<a title=\"MSDN: Backward compatibility AC2010 to AC2007\" href=\"http:\/\/social.msdn.microsoft.com\/Forums\/en-US\/accessdev\/thread\/3884e0c1-9222-4b91-a6db-6466d47c1294\" target=\"_blank\">there are glitches<\/a> that affect <a title=\"Backward Compatibility between Access 2010 and Access 2007\" href=\"http:\/\/msdn.microsoft.com\/en-us\/office\/cc907897\" target=\"_blank\">backward-compatibility<\/a> in this case&#x2014;a possible work-around if you encounter this problem is to create an .accdb in Access 2007 and import everything into that).<\/li>\n<li><strong>Obsolete features<\/strong>:<strong> <\/strong>Goodbye to &#8220;Data Access Pages&#8221; and other obsolete features &#8211; Microsoft has simplified the Office ecosystem by removing various obsolete features.<\/li>\n<li><strong>Incompatible with many 32-bit addins\/ macros etc.<\/strong> (Advantageous because this incompatibility provides additional protection against potentially unwanted software.)<\/li>\n<\/ul>\n<h2>Cons<\/h2>\n<ul>\n<li><strong><a title=\"PC Pro: Microsoft warns users off 64-bit Office 2010\" href=\"http:\/\/www.pcpro.co.uk\/news\/enterprise\/356173\/microsoft-warns-users-off-64-bit-office-2010\" target=\"_blank\">Incompatible with many 32-bit addins\/ macros etc.<\/a><\/strong> (If you care, you can still run Office 32-bit inside a Windows XP virtual machine running in parallel with your main Windows\/ Office installation.)<\/li>\n<li><strong>64-bit Office installation process<\/strong>: <a title=\"jaminquimby.com: Microsoft Office 2010 setup error\" href=\"http:\/\/jaminquimby.com\/index.php\/microsoft-office-2010\/110-microsoft-office-2010-setup-error-64-bit\" target=\"_blank\">Installation as an upgrade on an old computer can be problematic, especially if that computer has previously had a smell of any 32-bit edition of Office.<\/a> (<a title=\"blog.mpecsinc.ca: Installing Office 2010 technical information\" href=\"http:\/\/blog.mpecsinc.ca\/2009\/09\/installing-office-2010-technical.html\" target=\"_blank\">My own efforts hit a road-block so tough I had to reinstall Windows afresh.<\/a>)<\/li>\n<li><strong>VBA 7 64-bit<\/strong>: Any <strong>Declare<\/strong> statements in your VBA code will need to be reviewed and specially annotated with a new &#8220;PtrSafe&#8221; 64-bit compatibility flag in order for your code to work:\n<ul>\n<li><a title=\"MSDN: Working with VBA in Office 2010 32\/64-bit\" href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/ff700513%28office.11%29.aspx\" target=\"_blank\">Working with VBA in Office 2010 (32-bit) and Office 2010 (64-bit)<\/a><\/li>\n<li><a title=\"MSDN: Compatibility Between the 32-bit and 64-bit Versions of Office 2010\" href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/ee691831%28office.14%29.aspx\" target=\"_blank\">Compatibility Between the 32-bit and 64-bit Versions of Office 2010<\/a><\/li>\n<li>Use the <a title=\"Microsoft TechNet: Office Code Compatibility Inspector\" href=\"http:\/\/technet.microsoft.com\/en-us\/magazine\/ff626498.aspx\" target=\"_blank\"><strong>Office Code Compatibility Inspector<\/strong><\/a> (OCCI) from Microsoft, an automated tool for ensuring that your code is compatible with the Office 2010 <strong>64-bit<\/strong> object model.&nbsp; <strong>Caveats<\/strong>: OCCI only works for Word, Excel, Powerpoint (the OCCI Developer tab addon is <strong>not<\/strong> integrated with other Office applications; however, copying VBA code for API calls from Access into Word enabled me to work around this limitation of OCCI).&nbsp; OCCI is a simplistic tool that performs only a cursory inspection of the most obvious compatibility issues.&nbsp; While this is very useful at the beginning of the migration process, there may be no way to avoid the need for true in-house expertise for performing the actual migration.<\/li>\n<\/ul>\n<\/li>\n<li><strong>VBA\/ActiveX Calendar Control<\/strong> (a popular component) has been removed from MS Office.&nbsp; In the 32-bit version of Office 2010, you can work around this by patching in <strong>mscal.ocx<\/strong> on each workstation that requires it; but in Office 2010 64-bit your only potential option is a <a title=\"MSDN: Work-arounds for missing ActiveX Calendar Control\" href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/gg251104.aspx\" target=\"_blank\">more laborious reworking of the original project<\/a>.<\/li>\n<li><strong>COM controls (mscomctl.ocx)<\/strong> such as <strong>TreeView<\/strong> are no longer available in 64-bit editions of Microsoft Office.&nbsp; This is apparently because COM is based on deprecated 32-bit code which Microsoft chosen not to fully upgrade (instead preferring to encourage migration to newer code libraries.)&nbsp; Applications requiring certain COM controls may therefore require additional work to ensure a successful migration.<\/li>\n<li><strong>Outlook 2010<\/strong>: Can stall\/ crash during the initial configuration process for adding IMAP email accounts with more than a few hundreds of megabytes of data stored on the server.&nbsp; This may be due to new default settings introduced by MS in their general upgrade to IMAP functionality.&nbsp; I resolved this issue by loading a small IMAP account first and changing its settings so that only headers [rather than entire messages] are downloaded by default (after this, the larger accounts were configured without problems.)<\/li>\n<\/ul>\n<h2>Overall impressions &#8211; General system philosophy<\/h2>\n<p>Office 2010 is user-friendly (at least for end-users and for <em>developers who are deploying to a pure Office 2010 environment<\/em>), and builds on the all traditional strengths of MS Office.&nbsp; The Office suite still suffers from a toy-town approach to some potentially productive new features &#8211; for example, MS went to all the trouble of creating a NEW data trigger development environment within Access WITHOUT making it directly compatible with preexisting equivalent RDBMS functionality.&nbsp; However, there are many serious new features in MS Office that cannot be ignored by software developers or competitors &#8211; I personally use LibreOffice in parallel with MS Office, e.g. for the excellent <a title=\"LibreOffice: Drawing application, &ldquo;Draw&rdquo;\" href=\"http:\/\/www.libreoffice.org\/features\/draw\/\" target=\"_blank\">LibreOffice &ldquo;<em>Draw<\/em>&rdquo;<\/a>, and I still find the added value of MS Office to be totally worthwhile.<\/p>\n<p><strong>Owners of new computers running Windows 7 <a title=\"Microsoft: 32\/64-bit Windows Frequently Asked Questions\" href=\"http:\/\/windows.microsoft.com\/en-US\/windows7\/32-bit-and-64-bit-Windows-frequently-asked-questions\" target=\"_blank\">64-bit<\/a> should install Office 2010 64-bit<\/strong> if wanting extra protection from pestilent software companies invading your MS Office installation with their company-branded toolbar, or if there is any prospect of requiring &gt;2GB files or &gt;32 bit arithmetic precision.&nbsp; <strong>If you are upgrading from previous 32-bit Office installations without reinstalling Windows<\/strong>, or if you are running 32-bit Windows or <a title=\"Ars Technica: Microsoft: Why Office 2010 won&#39;t support Windows XP 64-bit\" href=\"http:\/\/arstechnica.com\/microsoft\/news\/2009\/12\/microsoft-why-office-2010-wont-support-windows-xp-64-bit.ars\" target=\"_blank\">Windows XP 64-bit<\/a>, or if you require any 32-bit addons or compatibility with the old MS ActiveX Calendar Control;<strong> you should install the 32-bit version<\/strong>.&nbsp; Microsoft&#8217;s own guidance can be found via <a title=\"Microsoft: TechNet: Advice on selection of 32\/64-bit version of MS Office\" href=\"http:\/\/technet.microsoft.com\/en-us\/library\/ee681792.aspx\" target=\"_blank\">this link<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A brief review of Office 2010 with a discussion of the technical benefits and disadvantages of the 64-bit edition. <a href=\"https:\/\/slyman.org\/blog\/2010\/11\/64-bit-windows-7office-2010-migration-experiences\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[72],"tags":[33,25,34,28,27,30,24,31,29,26,32],"class_list":["post-184","post","type-post","status-publish","format-standard","hentry","category-msoffice-vba","tag-2gb","tag-64-bit","tag-file-size-limit","tag-installation","tag-installing","tag-migration","tag-office-2010","tag-upgrade","tag-vba","tag-windows-7","tag-worthwhile"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/slyman.org\/blog\/wp-json\/wp\/v2\/posts\/184","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/slyman.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/slyman.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/slyman.org\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/slyman.org\/blog\/wp-json\/wp\/v2\/comments?post=184"}],"version-history":[{"count":1,"href":"https:\/\/slyman.org\/blog\/wp-json\/wp\/v2\/posts\/184\/revisions"}],"predecessor-version":[{"id":2932,"href":"https:\/\/slyman.org\/blog\/wp-json\/wp\/v2\/posts\/184\/revisions\/2932"}],"wp:attachment":[{"href":"https:\/\/slyman.org\/blog\/wp-json\/wp\/v2\/media?parent=184"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/slyman.org\/blog\/wp-json\/wp\/v2\/categories?post=184"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/slyman.org\/blog\/wp-json\/wp\/v2\/tags?post=184"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}