<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>VSOfficeDeveloper: Known Problems, Bugs, and Fixes</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/vsofficedeveloper/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/vsofficedeveloper/feed.xml</link>
    <description>A listing of known problems, bugs, and pending fixes associated with Office Core Products specific to Visual Studio (VB, C#, C++) Development.</description>
    <lastBuildDate>Thu, 30 Jul 2015 20:05:46 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Problems with System.OutOfMemoryException At System.String.GetStringForStringBuilder in 32-Bit Managed Solutions</title>
      <link>https://docs.microsoft.com/archive/blogs/vsofficedeveloper/problems-with-system-outofmemoryexception-at-system-string-getstringforstringbuilder-in-32-bit-managed-solutions</link>
      <pubDate>Fri, 10 Oct 2008 18:00:00 GMT</pubDate>
      <dc:creator><![CDATA[VSOfficeDeveloper]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vsofficedeveloper/2008/10/10/problems-with-system-outofmemoryexception-at-system-string-getstringforstringbuilder-in-32-bit-managed-solutions/</guid>
      <description><![CDATA[If you are working with a VSTO or managed code solution for Office, you may encounter a...]]></description>
      <content:encoded><![CDATA[<P>If you are working with a VSTO or managed code solution for Office, you may encounter a System.OutOfMemoryException when working with very large DataSets, XML files, or numerious object serialization calls. The problem typically occurs on a call to System.String.GetStringForStringBuilder in the managed call stack.</P>
<P>For details on the problem and its general cause, see the following post:<BR><A class="" href="http://blogs.msdn.com/vsofficedeveloper/pages/StringBuilder-OutOfMemoryException.aspx" mce_href="http://blogs.msdn.com/vsofficedeveloper/pages/StringBuilder-OutOfMemoryException.aspx">Problems with System.OutOfMemoryException At System.String.GetStringForStringBuilder in 32-Bit Managed Solutions</A><BR></P>]]></content:encoded>
    </item>
    <item>
      <title>Problems with System.OutOfMemoryException At System.String.GetStringForStringBuilder in 32-Bit Managed Solutions</title>
      <link>https://docs.microsoft.com/archive/blogs/vsofficedeveloper/problems-with-system-outofmemoryexception-at-system-string-getstringforstringbuilder-in-32-bit-managed-solutions-2</link>
      <pubDate>Fri, 10 Oct 2008 16:41:00 GMT</pubDate>
      <dc:creator><![CDATA[VSOfficeDeveloper]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vsofficedeveloper/2008/10/10/problems-with-system-outofmemoryexception-at-system-string-getstringforstringbuilder-in-32-bit-managed-solutions-2/</guid>
      <description><![CDATA[Symptom
Managed code solutions that use classes from the System.Data or System.Xml name may...]]></description>
      <content:encoded><![CDATA[<P><STRONG><U>Symptom</U></STRONG></P>
<P>Managed code solutions that use classes from the System.Data or System.Xml name may encounter a System.OutOfMemoryException when working with large datasets, XML files, or repeated operations that involve hundreds of (xml) object&nbsp;serialization calls from standardized components.&nbsp; The exception may cause the program to stop working or report an unexpected error to the user.&nbsp;</P>
<P>When the exception occurs, the&nbsp;top&nbsp;of the call stack will typically appear as something similiar to the following:</P>
<P><SPAN style="FONT-SIZE: 8pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'">System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.<BR>at System.String.GetStringForStringBuilder(String value, Int32 startIndex, Int32 length, Int32 capacity)<BR>at System.Text.StringBuilder.GetNewString(String currentString, Int32 requiredLength)<BR>at System.Text.StringBuilder.Append(String value)<BR>at System.IO.StringWriter.Write(String value)<BR>at System.Xml.XmlTextEncoder.Write(String text)</SPAN></P>
<P>The excact call stack may differ, and the problem can appear in many different products and different types of solutions, both on the client or on the server.</P>
<P><STRONG><U>More Information</U></STRONG></P>
<P>The problem is typically the result of a compound memory problem which results from limitations in the implementation of the StringBuilder class for .NET.&nbsp; Even if you do not&nbsp;call&nbsp;the&nbsp;StringBuilder class&nbsp;yourself, many managed objects use it indirectly for serialization, and as show above, the System.Xml classes use it for constructing and reading XML data (a common task in .NET).</P>
<P>The problem occurs if the process runs low on contiguous virtual memory space. This condition can occur through the normal running of managed code under stress conditions or if you employ very large DataSets, XML files, or other large string blocks&nbsp;from the managed code space.&nbsp; As you use StringBuilder objects, the memory buffer used for large strings is allocated directly from Virtual Memory, and is managed by the CLR on the Large Object Heap (LOH).&nbsp; The CLR does not (by design) compact the LOH when doing garbage collection because of the negative performance impact it would incur.&nbsp;In addition, the LOH is not typically collected unless a full (generation 3) collection occurs, which is much less frequent than normal GC collections.&nbsp;As a result, extended use of the LOH can result in both the depletion and fragmentation of the process virtual memory space over time.&nbsp;Since StringBuilder uses the LOH for large strings, this problem extends to any class that might use StringBuilder for serialization, XML parsing, or data remoting. </P>
<P>In addition to the fragmentation issue, the StringBuilder class implements a simple algorithm for allocating more memory to expand a string buffer.&nbsp; This system is designed for performance when dealling with small strings, but can result in poor memory use for very large strings (like you might see with a serialized DataSet), and tie up more memory than needed or expected. In addition, each time the buffer is expanded, another block of virtual memory is required and the original block may remain on the LOH because of low frequency of generation 3 collections.&nbsp; These facts can compound the problem, depending on the exact situation involved.</P>
<P>Naturally, the problem is unlikely to occur with 64-bit applications since the virtual memory address range for a 64-bit Windows application is much much&nbsp;greater than 32-bit processes.&nbsp;&nbsp; For comparison,&nbsp;a Windows 32-bit process has an address range up to 4GB, with typically&nbsp;2GB accessible for allocations by the application.&nbsp;A Windows 64-bit process, on the other hand, has an address range up to 16TB, with 8TB (7TB on Itanium-based systems) accessible for allocations.&nbsp;</P>
<P>Unfortunately, there is no single answer to problems involving this error.&nbsp; While some solutions exist for certain cases (for example, DataSets can be remoted using binary representation instead of XML, or code that uses StringBuilder directly can intialize the buffer with a size large enough to hold the data being manipulated to cut down on duplication from "growing" strings), the problem is a limitation of the design of elements from both the StringBuilder class and the LOH itself.&nbsp; Microsoft is investigating these problems to find solutions that can both manage the overall problem, while still keeping the fundamental performance of the original design.</P>
<P mce_keep="true">&nbsp;</P>]]></content:encoded>
    </item>
    <item>
      <title>OLE Link to Word 97-2003 File May Fail with OLE_E_CLASSDIFF Error on Open</title>
      <link>https://docs.microsoft.com/archive/blogs/vsofficedeveloper/ole-link-to-word-97-2003-file-may-fail-with-ole_e_classdiff-error-on-open</link>
      <pubDate>Wed, 08 Oct 2008 16:51:00 GMT</pubDate>
      <dc:creator><![CDATA[VSOfficeDeveloper]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vsofficedeveloper/2008/10/08/ole-link-to-word-97-2003-file-may-fail-with-ole_e_classdiff-error-on-open/</guid>
      <description><![CDATA[You may encounter an OLE_E_CLASSDIFF (0x80040008) error on calls to OleRun or IOleObject::DoVerb...]]></description>
      <content:encoded><![CDATA[<P>You may encounter an OLE_E_CLASSDIFF (0x80040008) error on calls to OleRun or IOleObject::DoVerb when attempting to bind to a Word document saved as an OLE link by Word 2007.&nbsp; See the following post for details:</P>
<P><A class="" href="http://blogs.msdn.com/vsofficedeveloper/pages/Word12-OLE-E-CLASSDIFF.aspx" mce_href="http://blogs.msdn.com/vsofficedeveloper/pages/Word12-OLE-E-CLASSDIFF.aspx">OLE Link to Word 97-2003 File May Fail with OLE_E_CLASSDIFF Error on Open</A></P>]]></content:encoded>
    </item>
    <item>
      <title>OLE Link to Word 97-2003 File May Fail with OLE_E_CLASSDIFF Error on Open</title>
      <link>https://docs.microsoft.com/archive/blogs/vsofficedeveloper/ole-link-to-word-97-2003-file-may-fail-with-ole_e_classdiff-error-on-open-2</link>
      <pubDate>Wed, 08 Oct 2008 16:16:00 GMT</pubDate>
      <dc:creator><![CDATA[VSOfficeDeveloper]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vsofficedeveloper/2008/10/08/ole-link-to-word-97-2003-file-may-fail-with-ole_e_classdiff-error-on-open-2/</guid>
      <description><![CDATA[Symptoms
You may encounter an OLE_E_CLASSDIFF (0x80040008) error on calls to OleRun or...]]></description>
      <content:encoded><![CDATA[<P><STRONG><U>Symptoms</U></STRONG></P>
<P>You may encounter an OLE_E_CLASSDIFF (0x80040008) error on calls to OleRun or IOleObject::DoVerb when attempting to bind to a Word document saved as an OLE link.&nbsp; This occurs when the following conditions are true:</P>
<UL>
<LI>The document linked to&nbsp;is a Word 97-2003 document (*.doc).</LI>
<LI>Word 2007 was used to create the link.</LI>
<LI>The OLE link was made from an IDataObject pointer obtained from the clipbaord or a drag/drop operation.</LI>
<LI>You get the error when attempting to bind to the linked document again when it is no longer running (i.e., it is not in the Running Object Table).</LI></UL>
<P><STRONG><U>Cause</U></STRONG></P>
<P>The problem can occur because when using the clipboard to obtain link data from Word 2007, the CLSID of the data return can be for a Word 2007 (*.docx) file type.&nbsp; This occurs regardless of the actual file format type that the document is saved in.&nbsp; The CLSID is&nbsp;persisted by the OLE link handler when the link is saved.&nbsp; At some point later when you attempt to reopen the link, if the file specified by the link is not already running, OLE32 will attempt to start the object anew.&nbsp; Before it does this, it compares the CLSID obtained from the binding to the moniker path to the CLSID saved from the OLE link. In this case, the moniker will return the CLSID {00020906-0000-0000-c000-000000000046} for a Word.Document.8 file type, but the CLSID saved in the link {F4754C9B-64F5-4B40-8AF4-679732AC0607} is for a Word.Document.12 type.&nbsp; OLE considers these different object types and will return the OLE_E_CLASSDIFF error on binding. </P>
<P><STRONG><U>Workaround</U></STRONG></P>
<P>The OLE client can override the CLSID check made by OLE32 when binding, which can thereby avoid the problem.&nbsp; To do this, check if the CLSID associated with the link is for the Word.Document.12 object type, and if it is, you can call IOleLink::BindToSource (before calling OleRun or IOleObject::DoVerb) and pass the OLELINKBIND_EVENIFCLASSDIFF flag.&nbsp; This flag will tell OLE to ignore the CLSID differences and allow the CLSID specified by the moniker to open the link.&nbsp; Since Word implements both objects the same in regards to links, this would work fine. </P>
<P><STRONG><U>Status</U></STRONG></P>
<P>This problem is a confirmed bug reported for Word 2007.&nbsp; </P>]]></content:encoded>
    </item>
    <item>
      <title>Unable to Open Office Documents for Edit From SharePoint Behind Cisco CSS Load Balancer</title>
      <link>https://docs.microsoft.com/archive/blogs/vsofficedeveloper/unable-to-open-office-documents-for-edit-from-sharepoint-behind-cisco-css-load-balancer</link>
      <pubDate>Fri, 03 Oct 2008 18:57:00 GMT</pubDate>
      <dc:creator><![CDATA[VSOfficeDeveloper]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vsofficedeveloper/2008/10/03/unable-to-open-office-documents-for-edit-from-sharepoint-behind-cisco-css-load-balancer/</guid>
      <description><![CDATA[If you use a Cisco CSS switch for load balancing or content caching to a SharePoint Server farm, you...]]></description>
      <content:encoded><![CDATA[<P>If you use a Cisco CSS switch for load balancing or content caching to a SharePoint Server farm, you may be unable to edit Office documents correctly if the switch is configured for Layer 5 content rules. By default, the Cisco CSS switch will block certain HTTP methods that are used to establish web authoring, and these can cause a problem for your Office clients and/or any SharePoint development from the client.&nbsp; </P>
<P>Please see the following post for details:<BR><A class="" href="http://blogs.msdn.com/vsofficedeveloper/pages/SharePoint-Cisco-CSS-Switch-Issue.aspx" mce_href="http://blogs.msdn.com/vsofficedeveloper/pages/SharePoint-Cisco-CSS-Switch-Issue.aspx">Unable to Open Office Documents for Edit From SharePoint Behind Cisco CSS Load Balancer</A></P>
<P mce_keep="true">&nbsp;</P>]]></content:encoded>
    </item>
    <item>
      <title>Unable to Open Office Documents for Edit From SharePoint Behind Cisco CSS Load Balancer</title>
      <link>https://docs.microsoft.com/archive/blogs/vsofficedeveloper/unable-to-open-office-documents-for-edit-from-sharepoint-behind-cisco-css-load-balancer-2</link>
      <pubDate>Fri, 03 Oct 2008 18:01:00 GMT</pubDate>
      <dc:creator><![CDATA[VSOfficeDeveloper]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vsofficedeveloper/2008/10/03/unable-to-open-office-documents-for-edit-from-sharepoint-behind-cisco-css-load-balancer-2/</guid>
      <description><![CDATA[Summary
When you build a Microsoft Office SharePoint (MOSS) server farm and configure it for load...]]></description>
      <content:encoded><![CDATA[<P><STRONG><U>Summary</U></STRONG></P>
<P>When you build a Microsoft Office SharePoint (MOSS) server farm and configure it for load balancing, you may be unable to open Office documents for edit access (collaboration) if you are using a Cisco Content Server Switch (CSS) with Layer 5 content rules applied.&nbsp; From the client, you may experience one of the following symptoms (depending on your version of the CSS software):</P>
<UL>
<LI>The client application opening the document appears to hang, taking somewhere between six to ten minutes to open the file. When the file opens up it is read-only.</LI>
<LI>The client application starts and loads the file right away, but the file opens read-only and the Workspaces Task Pane is unavailable.</LI></UL>
<P><STRONG><U>Cause</U></STRONG></P>
<P>As part of the process of opening documents for edit using URLs, Microsoft Office (2000-2007) client applications will request the server type and authoring protocol from the web server using the HTTP 1.1 OPTIONS verb as defined by <A class="" title="RFC 2616" href="http://tools.ietf.org/rfc/rfc2616.txt" target=_blank mce_href="http://tools.ietf.org/rfc/rfc2616.txt">RFC-2616</A> by the IETF.&nbsp; The purpose of the call is to determine the capabilities of the web server hosting the document, and to detemine the web authoring protocol the server supplies (if any) which the client can use to edit the file.&nbsp;This behavior is described in <A class="" title=KB838028 href="http://support.microsoft.com/default.aspx?scid=KB;EN-US;838028" target=_blank mce_href="http://support.microsoft.com/default.aspx?scid=KB;EN-US;838028">KB838028</A> under the section "Microsoft Office Protocol Discovery."</P>
<P>Under its default configuration, the Cisco CSS software will not&nbsp;permit traffic using the&nbsp;OPTIONS verb to be handled by the web server(s), and will reject the call.&nbsp;Depending on your version of the CSS software, the error returned may be different and give you different behavior, but the end result is that you will be unable to open the files for editing from the client.</P>
<P><STRONG><U>Resolution</U></STRONG></P>
<P>To resolve the issue you can do one of the following:</P>
<UL>
<LI>If you are running Cisco CSS version 7.50&nbsp;or higher, you can enable an option to allow passthrough of WebDAV commands, which includes the OPTIONS verb. The command to enable the passthrough is:<BR><BR>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'"># http-method parse RFC2518-methods<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P></LI>
<LI>If you are running an older Cisco CSS version, you may be to resolve the issue by recofiguring the switch to avoid&nbsp;Layer 5 content&nbsp;rules. If the balancer is configured to apply a higher rule&nbsp;level Layer 5 (HTTP filtering), the code that disallows the call will not be encountered and the packet will be allowed to pass to the web server as expected.&nbsp;See your Cisco guide for help.</LI></UL>
<P><STRONG><U>More Information</U></STRONG></P>
<P>By design, the Cisco CSS software for Layer 5 content rules&nbsp;allows only the CONNECT, GET, HEAD, POST, and PUT verbs for HTTP 1.0/1.1.&nbsp; Earlier versions of the switch software would simply reject these calls with a TCP FIN response, which could be treated by the client as a dropped connection.&nbsp; The client could then get in a state of repeating the call to reestabilish the connection, which when repeated could result in a&nbsp;loop that lasts until the socket layer times out the call.&nbsp; This could cause&nbsp;"hang like" appearance since the client is waiting on a server HTTP response that does not come.&nbsp; Cisco altered the switch design to return a TCP RST instead, which prevents this "hang-like" loop by the client, but still blocks the call. Since Office is unable to communicate to the web server, web authoring is not available and the&nbsp;document will open read only (as returned by a standard&nbsp;HTTP GET request instead).</P>
<P>Starting around version 7.50 of the CSS software, Cisco added the ability for you to configure the list of verbs allowed by the CSS switch. Included in this update is a setting to allow all HTTP verbs defined for the WebDAV protocol as documented in <A class="" title=RFC-2518 href="http://tools.ietf.org/rfc/rfc2518.txt" target=_blank mce_href="http://tools.ietf.org/rfc/rfc2518.txt">RFC-2518</A>.&nbsp; While the OPTIONS verb is not specific to this protocol (and in fact, Office will use WEC and not WebDAV for authoring to SharePoint), the OPTIONS verb is central to the&nbsp;operation of the DAV protocol, and therefore must be enabled to use DAV.&nbsp; So enabling the "RFC2518-methods" setting on the CSS will enable the&nbsp;OPTIONS verb, and&nbsp;will allow the client&nbsp;call to reach the web server as intended. </P>
<P>For information about the "RFC2518-methods" setting available in CSS 7.50 and higher, please see your CSS guide from Cisco.&nbsp; Here is an online copy of the relevant section in the 8.20 documentation from Cisco: <A class="" href="http://www.cisco.com/en/US/docs/app_ntwk_services/data_center_app_services/css11500series/v8.20/configuration/content_lb/guide/ContRule.html#wp1122545" target=_blank mce_href="http://www.cisco.com/en/US/docs/app_ntwk_services/data_center_app_services/css11500series/v8.20/configuration/content_lb/guide/ContRule.html#wp1122545">Configuring HTTP Method Parsing</A>.</P>
<P>This behavior is "by design" according to the default settings of the Cisco CSS Layer 5 Content Rules.</P>
<P mce_keep="true">&nbsp;</P>]]></content:encoded>
    </item>
    <item>
      <title>Excel 2007 XLL SDK Unicode String Support Update</title>
      <link>https://docs.microsoft.com/archive/blogs/vsofficedeveloper/excel-2007-xll-sdk-unicode-string-support-update</link>
      <pubDate>Wed, 10 Sep 2008 16:25:00 GMT</pubDate>
      <dc:creator><![CDATA[VSOfficeDeveloper]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vsofficedeveloper/2008/09/10/excel-2007-xll-sdk-unicode-string-support-update/</guid>
      <description><![CDATA[The Microsoft Excel 2007 XLL SDK introduced a&nbsp;new data structure, the XLOPER12,...]]></description>
      <content:encoded><![CDATA[<P>The Microsoft Excel 2007 XLL SDK introduced a&nbsp;new data structure, the XLOPER12, which&nbsp;allows your addin to obtain Unicode strings in XLL function calls.&nbsp; However, there were a couple of limitations with the implemention of the SDK which prevented your XLL from taking full advantage of this new capability.&nbsp;Specifically, while Excel 12 would allow strings in Unicode, some functions would still insist on a 255 character limit if the resulting XLL type was an XLOPER12 type (instead of a LPWSTR type), restricting the length of the overall string.&nbsp; Also, the benefits of the new string type did not carry over to setting strings with the xlSet function, only&nbsp;accepting them as&nbsp;parameters or reading them as results from certain&nbsp;callback functions.</P>
<P>Excel development has addressed these limitations in a comprehensive fix for Excel 2007, released as part of the the August 2008 Cumulative Update for Excel 2007 (see <A class="" title=KB956836 href="http://support.microsoft.com/kb/956836/" mce_href="http://support.microsoft.com/kb/956836/">KB956836</A> ).</P>]]></content:encoded>
    </item>
    <item>
      <title>Problems with SharePoint DateTime Columns in Office 2007 Documents Edited by Office 2003</title>
      <link>https://docs.microsoft.com/archive/blogs/vsofficedeveloper/problems-with-sharepoint-datetime-columns-in-office-2007-documents-edited-by-office-2003</link>
      <pubDate>Thu, 29 May 2008 18:12:00 GMT</pubDate>
      <dc:creator><![CDATA[VSOfficeDeveloper]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vsofficedeveloper/2008/05/29/problems-with-sharepoint-datetime-columns-in-office-2007-documents-edited-by-office-2003/</guid>
      <description><![CDATA[A problem was recently discovered with the Office 2007 Compatibility Pack file converters when used...]]></description>
      <content:encoded><![CDATA[<P mce_keep="true">A problem was recently discovered with the Office 2007 Compatibility Pack file converters when used to open Office 2007 Open XML files in previous Office versions, when those files&nbsp;have custom Date/Time properties attached associated with SharePoint. If the documents are opened and saved back to SharePoint in Office XP/2003, the Date/Time property may accidently get modified to an incorrect time due to a bug in UTC-to-Local time conversion.</P>
<P mce_keep="true">See the following post for full details:<BR><A href="http://blogs.msdn.com/vsofficedeveloper/pages/MOSS-Date-Time-Column-Corruption.aspx" mce_href="http://blogs.msdn.com/vsofficedeveloper/pages/MOSS-Date-Time-Column-Corruption.aspx">SharePoint Document Library Date Time Columns May Be Incorrectly Changed for Office 2007 Documents if Opened and Saved by Office XP/2003</A></P>
<P mce_keep="true">&nbsp;</P>]]></content:encoded>
    </item>
    <item>
      <title>SharePoint Document Library Date Time Columns May Be Incorrectly Changed for Office 2007 Documents if Opened and Saved by Office XP/2003</title>
      <link>https://docs.microsoft.com/archive/blogs/vsofficedeveloper/sharepoint-document-library-date-time-columns-may-be-incorrectly-changed-for-office-2007-documents-if-opened-and-saved-by-office-xp2003</link>
      <pubDate>Thu, 29 May 2008 17:33:00 GMT</pubDate>
      <dc:creator><![CDATA[VSOfficeDeveloper]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vsofficedeveloper/2008/05/29/sharepoint-document-library-date-time-columns-may-be-incorrectly-changed-for-office-2007-documents-if-opened-and-saved-by-office-xp2003/</guid>
      <description><![CDATA[Symptoms
If you create a document library in Microsoft Office SharePoint Server (MOSS) with a...]]></description>
      <content:encoded><![CDATA[<P><STRONG><U>Symptoms</U></STRONG></P>
<P>If you create a document library in Microsoft Office SharePoint Server (MOSS) with a custom column of a Date/Time data type, and you store Office 2007 (Open XML) documents in that library, if the files are opened, edited and then saved back to the SharePoint library using Office XP or Office 2003, the date/time value of the&nbsp;custom column property may mistakenly be changed to an incorrect time when the file is saved.&nbsp; The problem is an incorrect conversion of the date time value from UTC to local time and back again, causing the time value of the property to be altered plus/minus some time increment equal to the time difference between your local time and the GMT time zone.&nbsp; The problem pertains only to custom properties associated with a SharePoint document library, and only if the file is converted at runtime for Office XP/2003 (it does not occur if client is using Office 2007).</P>
<P><STRONG><U>Cause</U></STRONG></P>
<P>The problem is a confirmed bug in the Office 2007 Compatibility Pack converters for Word and Excel.&nbsp; During the conversion process from Open XML format into the native formats used by Office XP/2003, a call is made to check if the file contains custom document properties associated with SharePoint lists or columns.&nbsp;If found, the properties are re-evaluated and thereby modified.&nbsp; Due to a bug in this process, the properties are (re)saved in the native file in local file time instead of UTC.&nbsp; When the native document is then opened, edited, and re-saved, Office XP/2003 believes the new time value is in UTC and thereby converts the local time back into Open XML format as if it was the UTC time.&nbsp; When the file is saved back to SharePoint, the incorrect time is updated on the server and SharePoint displays the new (incorrect) time in the document library column. If the process is repeated, you may continue to gain/lose hours for that column.</P>
<P><STRONG><U>Status</U></STRONG></P>
<P>The problem is being investigated for a future fix in Office 2007 SP2 for the Compatibility Pack.</P>
<P><STRONG><U>Steps to Reproduce</U></STRONG></P>
<P>1.) On your MOSS server, log in with an account that has Designer or Full Permissions to the MOSS site.&nbsp; Create a new document library. Name the library TestLib, and change the Document Template setting to Microsoft Office Word Document (this is the *.DOCX file type).</P>
<P>2.) Once TestLib is generated, view the (empty) library and choose Settings | Create Column.&nbsp; Name the column TestTime, choose Date And Time as the column type, then choose Date &amp; Time for the Date and Time Format type, and Today's Date for the default value. Press OK to create the custom column property.</P>
<P>3.) Go to a machine with Office 2007.&nbsp;In a web browser, navigate to TestLib on your MOSS site, then choose New | New Document.&nbsp; This should prompt you if you would like to create a new file.&nbsp; Choose Yes.</P>
<P>4.) After the file opens in Word 2007, modify the file is some way, then choose Save.&nbsp; In the SaveAs dialog, you should see the TestLib location is already selected for you, so you just need to provide a file name and click Save.&nbsp; The file should be saved.&nbsp; Close the file.</P>
<P>5.) Switch back to the web browser and refresh your view.&nbsp; You should see your file listed and the TestTime column with today's date and time.</P>
<P>6.) Go to a machine with Office 2003 and the Compatibility Pack installed.&nbsp; In a web browser, navigate to TestLib on your MOSS site, then find the document you saved previously.&nbsp; Click the link to open the file in Word 2003&nbsp;(you can also choose the "Edit In Microsoft Word" dropdown option). </P>
<P>7.) The file will auto-convert and open in Word 2003.&nbsp; Make any small change you like to the document and press Save. Close the file.</P>
<P>8.) Switch back to the web browser and refresh your view.&nbsp; You will see the file was updated (as expected) and&nbsp;the TestTime column value has&nbsp;changed (assuming you are in a different time zone than GMT) which is not expected.&nbsp;&nbsp;The time value was not modified by the user, so should have stayed the same. It did not.&nbsp; The amount of time difference (+/- X hours) will depend on your local time zone.</P>
<P mce_keep="true">&nbsp;</P>]]></content:encoded>
    </item>
    <item>
      <title>Field’s promoted from an InfoPath form template during publishing to a Microsoft Office SharePoint Server are created multiple times</title>
      <link>https://docs.microsoft.com/archive/blogs/vsofficedeveloper/fields-promoted-from-an-infopath-form-template-during-publishing-to-a-microsoft-office-sharepoint-server-are-created-multiple-times</link>
      <pubDate>Mon, 19 May 2008 17:05:00 GMT</pubDate>
      <dc:creator><![CDATA[VSOfficeDeveloper]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vsofficedeveloper/2008/05/19/fields-promoted-from-an-infopath-form-template-during-publishing-to-a-microsoft-office-sharepoint-server-are-created-multiple-times/</guid>
      <description><![CDATA[When publishing an InfoPath Form Template (XSN file) to multiple servers (i.e. a development server...]]></description>
      <content:encoded><![CDATA[<P>When publishing an InfoPath Form Template (XSN file) to multiple servers (i.e. a development server and a production server) and you are promoting fields from the InfoPath data source to be created as columns in SharePoint, those fields may get recreated each time you publish the XSN.</P>
<P>See the following post for more information:<BR><A class="" href="http://blogs.msdn.com/vsofficedeveloper/pages/InfoPath-Fields-Promoted-in-MOSS.aspx" mce_href="http://blogs.msdn.com/vsofficedeveloper/pages/InfoPath-Fields-Promoted-in-MOSS.aspx">Field’s promoted from an InfoPath form template during publishing to a Microsoft Office SharePoint Server are created multiple times</A></P>]]></content:encoded>
    </item>
  </channel>
</rss>