Both sides previous revisionPrevious revisionNext revision | Previous revision |
windows:sharepointinplaceofficeeditingprotocol [2015/12/03 14:27] – [What happens when the user clicks on the save button on word] rlunaro | windows:sharepointinplaceofficeeditingprotocol [2022/12/02 21:02] (current) – external edit 127.0.0.1 |
---|
changes made are saved back into the sharepoint again when the edition is ended. | changes made are saved back into the sharepoint again when the edition is ended. |
| |
**My humble proposal is to decipher this mechanism for implement it by myself.** | I've investigated what's behind the scenes in this feature of sharepoint and it seems that there |
| is a SOAP communication between Internet Explorer in the first place and word in the second |
| place. In the case of the "open with windows explorer" feature, the communication that takes place |
| is between the sharepoint server and a process called ''[[http://www.howtogeek.com/howto/windows-vista/what-is-svchostexe-and-why-is-it-running/|svchost.exe]]''. |
| |
===== Tools ===== | ===== Tools ===== |
| |
* A sledgehammer | * A sledgehammer |
* [[http://www.telerik.com/fiddler|Fiddler] | * [[http://www.telerik.com/fiddler|Fiddler]] |
* Internet Explorer | * Internet Explorer |
* a running Sharepoint server | * a running Sharepoint server |
<Header Name="SOAPAction" Value=""http://schemas.microsoft.com/sharepoint/soap/ICellStorages/ExecuteCellStorageRequest"" /> | <Header Name="SOAPAction" Value=""http://schemas.microsoft.com/sharepoint/soap/ICellStorages/ExecuteCellStorageRequest"" /> |
</Headers> | </Headers> |
<StringHttpBody ContentType="multipart/related; type="application/xop+xml"; boundary="urn:uuid:78860c35-0752-46ea-8dec-c424c086534a"; start="<c7d89fa5-b62d-4b78-86c5-141dd2e21bf6@tempuri.org>"; start-Info="text/xml; charset=utf-8"">DQAKAC0ALQB1AHIAbgA6AHUAdQBpAGQAOgA3ADgAOAA2ADAAYwAzADUALQAwADcANQAyAC0ANAA2AGUAYQAtADgAZABlAGMALQBjADQAMgA0AGMAMAA4ADYANQAzADQAYQANAAoAQwBvAG4AdABlAG4AdAAtAEkARAA6ACAAPABjADcAZAA4ADkAZgBhADUALQBiADYAMgBkAC0ANABiADcAOAAtADgANgBjADUALQAxADQAMQBkAGQAMgBlADIAMQBiAGYANgBAAHQAZQBtAHAAdQByAGkALgBvAHIAZwA+AA0ACgBDAG8AbgB0AGUAbgB0AC0AVAByAGEAbgBzAGYAZQByAC0ARQBuAGMAbwBkAGkAbgBnADoAIAA4AGIAaQB0AA0ACgBDAG8AbgB0AGUAbgB0AC0AVAB5AHAAZQA6ACAAYQBwAHAAbABpAGMAYQB0AGkAbwBuAC8AeABvAHAAKwB4AG0AbAA7AGMAaABhAHIAcwBlAHQAPQB1AHQAZgAtADgAOwB0AHkAcABlAD0AIgB0AGUAeAB0AC8AeABtAGwAOwAgAGMAaABhAHIAcwBlAHQAPQB1AHQAZgAtADgAIgANAAoADQAKADwAcwA6AEUAbgB2AGUAbABvAHAAZQAgAHgAbQBsAG4AcwA6AHMAPQAiAGgAdAB0AHAAOgAvAC8AcwBjAGgAZQBtAGEAcwAuAHgAbQBsAHMAbwBhAHAALgBvAHIAZwAvAHMAbwBhAHAALwBlAG4AdgBlAGwAbwBwAGUALwAiAD4APABzADoAQgBvAGQAeQA+ADwAUgBlAHEAdQBlAHMAdABWAGUAcgBzAGkAbwBuACAAVgBlAHIAcwBpAG8AbgA9ACIAMgAiACAATQBpAG4AbwByAFYAZQByAHMAaQBvAG4APQAiADAAIgAgAHgAbQBsAG4AcwA9ACIAaAB0AHQAcAA6AC8ALwBzAGMAaABlAG0AYQBzAC4AbQBpAGMAcgBvAHMAbwBmAHQALgBjAG8AbQAvAHMAaABhAHIAZQBwAG8AaQBuAHQALwBzAG8AYQBwAC8AIgAvAD4APABSAGUAcQB1AGUAcwB0AEMAbwBsAGwAZQBjAHQAaQBvAG4AIABDAG8AcgByAGUAbABhAHQAaQBvAG4ASQBkAD0AIgB7ADAAMAAyADcARgA5AEEAQQAtAEQAQwAyADgALQA0ADcAQgA4AC0AQgAyADYAMgAtADUAMQA2ADMANgAxADIAMQAxADEAMgBCAH0AIgAgAHgAbQBsAG4AcwA9ACIAaAB0AHQAcAA6AC8ALwBzAGMAaABlAG0AYQBzAC4AbQBpAGMAcgBvAHMAbwBmAHQALgBjAG8AbQAvAHMAaABhAHIAZQBwAG8AaQBuAHQALwBzAG8AYQBwAC8AIgA+ADwAUgBlAHEAdQBlAHMAdAAgAFUAcgBsAD0AIgBoAHQAdABwAHMAOgAvAC8AdwB0AHIAYQBiAGEAagBhAG4AZABvAGoAdQBuAHQAbwBzAC8AZABnAGEALwBzAHQAdQBmAGYALwB0AGUAcwB0AC4AZABvAGMAeAAiACAAUgBlAHEAdQBlAHMAdABUAG8AawBlAG4APQAiADEAIgA+ADwAUwB1AGIAUgBlAHEAdQBlAHMAdAAgAFQAeQBwAGUAPQAiAFMAZQByAHYAZQByAFQAaQBtAGUAIgAgAFMAdQBiAFIAZQBxAHUAZQBzAHQAVABvAGsAZQBuAD0AIgAxACIALwA+ADwAUwB1AGIAUgBlAHEAdQBlAHMAdAAgAFQAeQBwAGUAPQAiAEMAbwBhAHUAdABoACIAIABTAHUAYgBSAGUAcQB1AGUAcwB0AFQAbwBrAGUAbgA9ACIAMgAiAD4APABTAHUAYgBSAGUAcQB1AGUAcwB0AEQAYQB0AGEAIABDAG8AYQB1AHQAaABSAGUAcQB1AGUAcwB0AFQAeQBwAGUAPQAiAEoAbwBpAG4AQwBvAGEAdQB0AGgAbwByAGkAbgBnACIAIABTAGMAaABlAG0AYQBMAG8AYwBrAEkARAA9ACIAMgA5ADMANQA4AEUAQwAxAC0ARQA4ADEAMwAtADQANwA5ADMALQA4AEUANwAwAC0ARQBEADAAMwA0ADQARQA3AEIANwAzAEMAIgAgAEMAbABpAGUAbgB0AEkARAA9ACIAewA0ADcAMAA1AEIAMAA3AEYALQBFADgANQAwAC0ANABEADgANQAtAEIAMgBGADcALQA5AEQAOAAxAEQAOQBCADIANwAxADAAQwB9ACIAIABUAGkAbQBlAG8AdQB0AD0AIgAzADYAMAAwACIAIABBAGwAbABvAHcARgBhAGwAbABiAGEAYwBrAFQAbwBFAHgAYwBsAHUAcwBpAHYAZQA9ACIAdAByAHUAZQAiACAARQB4AGMAbAB1AHMAaQB2AGUATABvAGMAawBJAEQAPQAiAHsANAA3ADAANQBCADAANwBGAC0ARQA4ADUAMAAtADQARAA4ADUALQBCADIARgA3AC0AOQBEADgAMQBEADkAQgAyADcAMQAwAEMAfQAiAC8APgA8AC8AUwB1AGIAUgBlAHEAdQBlAHMAdAA+ADwAUwB1AGIAUgBlAHEAdQBlAHMAdAAgAFQAeQBwAGUAPQAiAFMAYwBoAGUAbQBhAEwAbwBjAGsAIgAgAFMAdQBiAFIAZQBxAHUAZQBzAHQAVABvAGsAZQBuAD0AIgAzACIAIABEAGUAcABlAG4AZABzAE8AbgA9ACIAMgAiACAARABlAHAAZQBuAGQAZQBuAGMAeQBUAHkAcABlAD0AIgBPAG4ATgBvAHQAUwB1AHAAcABvAHIAdABlAGQAIgA+ADwAUwB1AGIAUgBlAHEAdQBlAHMAdABEAGEAdABhACAAUwBjAGgAZQBtAGEATABvAGMAawBSAGUAcQB1AGUAcwB0AFQAeQBwAGUAPQAiAEcAZQB0AEwAbwBjAGsAIgAgAFMAYwBoAGUAbQBhAEwAbwBjAGsASQBEAD0AIgAyADkAMwA1ADgARQBDADEALQBFADgAMQAzAC0ANAA3ADkAMwAtADgARQA3ADAALQBFAEQAMAAzADQANABFADcAQgA3ADMAQwAiACAAQwBsAGkAZQBuAHQASQBEAD0AIgB7ADQANwAwADUAQgAwADcARgAtAEUAOAA1ADAALQA0AEQAOAA1AC0AQgAyAEYANwAtADkARAA4ADEARAA5AEIAMgA3ADEAMABDAH0AIgAgAFQAaQBtAGUAbwB1AHQAPQAiADMANgAwADAAIgAgAEEAbABsAG8AdwBGAGEAbABsAGIAYQBjAGsAVABvAEUAeABjAGwAdQBzAGkAdgBlAD0AIgB0AHIAdQBlACIAIABFAHgAYwBsAHUAcwBpAHYAZQBMAG8AYwBrAEkARAA9ACIAewA0ADcAMAA1AEIAMAA3AEYALQBFADgANQAwAC0ANABEADgANQAtAEIAMgBGADcALQA5AEQAOAAxAEQAOQBCADIANwAxADAAQwB9ACIALwA+ADwALwBTAHUAYgBSAGUAcQB1AGUAcwB0AD4APABTAHUAYgBSAGUAcQB1AGUAcwB0ACAAVAB5AHAAZQA9ACIAQwBlAGwAbAAiACAAUwB1AGIAUgBlAHEAdQBlAHMAdABUAG8AawBlAG4APQAiADYAIgAgAEQAZQBwAGUAbgBkAHMATwBuAD0AIgAzACIAIABEAGUAcABlAG4AZABlAG4AYwB5AFQAeQBwAGUAPQAiAE8AbgBFAHgAZQBjAHUAdABlACIAPgA8AFMAdQBiAFIAZQBxAHUAZQBzAHQARABhAHQAYQAgAFAAYQByAHQAaQB0AGkAbwBuAEkARAA9ACIAMwA4ADMAYQBkAGMAMABiAC0AZQA2ADYAZQAtADQANAAzADgALQA5ADUAZQA2AC0AZQAzADkAZQBmADkANwAyADAAMQAyADIAIgAgAEIAaQBuAGEAcgB5AEQAYQB0AGEAUwBpAHoAZQA9ACIAOAA4ACIAPgBEAEEAQQBMAEEASgB6AFAASwBmAE0ANQBsAEEAYQBiAEIAZwBJAEEAQQBPADQAQwBBAEEAQwBxAEEAaQBBAEEAagBCAEMARQBHAFoATgBMADYAMAA2AHoASQBKAEcAVQBNAHQAYgBsAGsAMwBvAEMAQwBBAEEARQB2AEMARgBPAGQAdwBFAFcAQQBnAFkAQQBBAHcAVQBBAGkAZwBJAEMAQQBBAEQAYQBBAGcAWQBBAEEAdwBBAEEAeQBnAEkASQBBAEEAZwBBAGcAQQBPAEUAQQBFAEUATABBAGEAdwBDAEEARgBVAEQAQQBRAD0APQA8AC8AUwB1AGIAUgBlAHEAdQBlAHMAdABEAGEAdABhAD4APAAvAFMAdQBiAFIAZQBxAHUAZQBzAHQAPgA8AFMAdQBiAFIAZQBxAHUAZQBzAHQAIABUAHkAcABlAD0AIgBDAGUAbABsACIAIABTAHUAYgBSAGUAcQB1AGUAcwB0AFQAbwBrAGUAbgA9ACIANQAiACAARABlAHAAZQBuAGQAcwBPAG4APQAiADMAIgAgAEQAZQBwAGUAbgBkAGUAbgBjAHkAVAB5AHAAZQA9ACIATwBuAEUAeABlAGMAdQB0AGUAIgA+ADwAUwB1AGIAUgBlAHEAdQBlAHMAdABEAGEAdABhACAARwBlAHQARgBpAGwAZQBQAHIAbwBwAHMAPQAiAHQAcgB1AGUAIgAgAEIAaQBuAGEAcgB5AEQAYQB0AGEAUwBpAHoAZQA9ACIAMwAzADMAIgA+AEQAQQBBAEwAQQBKAHoAUABLAGYATQA1AGwAQQBhAGIAQgBnAEkAQQBBAE8ANABDAEEAQQBDAHEAQQBpAEEAQQBqAEIAQwBFAEcAWgBOAEwANgAwADYAegBJAEoARwBVAE0AdABiAGwAawAzAG8AQwBDAEEAQQBFAHYAQwBGAE8AZAB3AEUAVwBBAGcAWQBBAEEAdwBVAEEAaQBnAEkAQwBBAEEARABhAEEAZwBZAEEAQQB3AEEAQQB5AGcASQBJAEEAQQBnAEEAZwBBAE8ARQBBAEMAWQBDAEkAQQBEADIATgBYAG8AeQBZAFEAYwBVAFIASgBhAEcAVQBlAGsAQQBaAG4AcABOAHAAQQBCADQASgBzAG8ARgBlAEsANwBQAEcAQQBCAEcAcQBiAFIAWQBlAHQARABZAFUAagBZAEEAQQBnAEoANABKAGoAWAA2AGgAMQBFAHcANQAvACsANQBxAGIAUgBZAGUAdABEAFkAVQBqAFkAQQBGAGcASgBSAEUAdwBFAG0AQQBpAEEAQQBFAHgAOABKAEUASQBMAEkAKwAwAEMAWQBoAG0AVQB6ACsAVABUAEMASABXAHcAQgBjAE4ARQBNACsAUQB0AEIATgAyAC8AUgBtAFUAUwBtAHcAeQBjAGoATAB0AHkAbgBFAGEAMQA3AEEARQBVAEEATgBnAEEAeABBAEQAawBBAE8AUQBCAEcAQQBEAGsAQQBRAHcAQQB0AEEARABNAEEATgBnAEEAMgBBAEQATQBBAEwAUQBBADAAQQBFAFEAQQBPAFEAQQA0AEEAQwAwAEEATwBRAEIARABBAEQASQBBAE4AdwBBAHQAQQBEAEEAQQBOAHcAQgBHAEEARABBAEEAUQB3AEEAegBBAEQATQBBAFIAZwBCAEQAQQBEAFEAQQBOAFEAQQA1AEEASAAwAEEATABBAEEAegBBAEMAdwBBAE4AQQBBAEEAQQBMAFUAVABBAFMAWQBDAEkAQQBBAE8ANgBYAFkANgBNAG8AQQBNAFQAYgBuAGQAOAA4AFoAUQBLAFUATQArAFQAQQBFAGcASwBBAHoASwBCAFgAaQB1AHoAeABnAEEAUgBxAG0AMABXAEgAcgBRADIARgBJADIAQQBnAEkAQQBwAFIATQBCAFEAUQBzAEIAcgBBAEkAQQBWAFEATQBCADwALwBTAHUAYgBSAGUAcQB1AGUAcwB0AEQAYQB0AGEAPgA8AC8AUwB1AGIAUgBlAHEAdQBlAHMAdAA+ADwAUwB1AGIAUgBlAHEAdQBlAHMAdAAgAFQAeQBwAGUAPQAiAEMAZQBsAGwAIgAgAFMAdQBiAFIAZQBxAHUAZQBzAHQAVABvAGsAZQBuAD0AIgA0ACIAIABEAGUAcABlAG4AZABzAE8AbgA9ACIAMwAiACAARABlAHAAZQBuAGQAZQBuAGMAeQBUAHkAcABlAD0AIgBPAG4ARQB4AGUAYwB1AHQAZQAiAD4APABTAHUAYgBSAGUAcQB1AGUAcwB0AEQAYQB0AGEAIABQAGEAcgB0AGkAdABpAG8AbgBJAEQAPQAiADcAOAAwADgAZgA0AGQAZAAtADIAMwA4ADUALQA0ADkAZAA2AC0AYgA3AGMAZQAtADMANwBhAGMAYQA1AGUANAAzADYAMAAyACIAIABCAGkAbgBhAHIAeQBEAGEAdABhAFMAaQB6AGUAPQAiADgAOAAiAD4ARABBAEEATABBAEoAegBQAEsAZgBNADUAbABBAGEAYgBCAGcASQBBAEEATwA0AEMAQQBBAEMAcQBBAGkAQQBBAGoAQgBDAEUARwBaAE4ATAA2ADAANgB6AEkASgBHAFUATQB0AGIAbABrADMAbwBDAEMAQQBBAEUAdgBDAEYATwBkAHcARQBXAEEAZwBZAEEAQQB3AFUAQQBpAGcASQBDAEEAQQBEAGEAQQBnAFkAQQBBAHcAQQBBAHkAZwBJAEkAQQBBAGcAQQBnAEEATwBFAEEARQBFAEwAQQBhAHcAQwBBAEYAVQBEAEEAUQA9AD0APAAvAFMAdQBiAFIAZQBxAHUAZQBzAHQARABhAHQAYQA+ADwALwBTAHUAYgBSAGUAcQB1AGUAcwB0AD4APABTAHUAYgBSAGUAcQB1AGUAcwB0ACAAVAB5AHAAZQA9ACIAVwBoAG8AQQBtAEkAIgAgAFMAdQBiAFIAZQBxAHUAZQBzAHQAVABvAGsAZQBuAD0AIgA3ACIALwA+ADwALwBSAGUAcQB1AGUAcwB0AD4APAAvAFIAZQBxAHUAZQBzAHQAQwBvAGwAbABlAGMAdABpAG8AbgA+ADwALwBzADoAQgBvAGQAeQA+ADwALwBzADoARQBuAHYAZQBsAG8AcABlAD4ADQAKAC0ALQB1AHIAbgA6AHUAdQBpAGQAOgA3ADgAOAA2ADAAYwAzADUALQAwADcANQAyAC0ANAA2AGUAYQAtADgAZABlAGMALQBjADQAMgA0AGMAMAA4ADYANQAzADQAYQAtAC0ADQAKAA==</StringHttpBody> | <StringHttpBody ContentType="multipart/related; type="application/xop+xml"; boundary="urn:uuid:78860c35-0752-46ea-8dec-c424c086534a"; start="<c7d89fa5-b62d-4b78-86c5-141dd2e21bf6@tempuri.org>"; start-Info="text/xml; charset=utf-8"">BsAD0AIgBoAHQAdABwAHMAOgAvAC8AdwB0AHIAYQBiAGEAagBhAG4AZABvAGoAdQBuAHQAbwB....YANQAzADQAYQAtAC0ADQAKAA==</StringHttpBody> |
</Request> | </Request> |
<Request Method="POST" Version="1.1" Url="https://mysharepointserver/_vti_bin/webs.asmx" ThinkTime="0" Timeout="60" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8"> | <Request Method="POST" Version="1.1" Url="https://mysharepointserver/_vti_bin/webs.asmx" ThinkTime="0" Timeout="60" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8"> |
<Header Name="X-Office-Version" Value="14.0.7128" /> | <Header Name="X-Office-Version" Value="14.0.7128" /> |
</Headers> | </Headers> |
<StringHttpBody ContentType="text/xml; charset=utf-8">PAA/AHgAbQBsACAAdgBlAHIAcwBpAG8AbgA9ACIAMQAuADAAIgAgAGUAbgBjAG8AZABpAG4AZwA9ACIAdQB0AGYALQA4ACIAPwA+AAoAPABzAG8AYQBwADoARQBuAHYAZQBsAG8AcABlACAAeABtAGwAbgBzADoAcwBvAGEAcAA9ACIAaAB0AHQAcAA6AC8ALwBzAGMAaABlAG0AYQBzAC4AeABtAGwAcwBvAGEAcAAuAG8AcgBnAC8AcwBvAGEAcAAvAGUAbgB2AGUAbABvAHAAZQAvACIAPgAKADwAcwBvAGEAcAA6AEIAbwBkAHkAPgAKADwAVwBlAGIAVQByAGwARgByAG8AbQBQAGEAZwBlAFUAcgBsACAAeABtAGwAbgBzAD0AIgBoAHQAdABwADoALwAvAHMAYwBoAGUAbQBhAHMALgBtAGkAYwByAG8AcwBvAGYAdAAuAGMAbwBtAC8AcwBoAGEAcgBlAHAAbwBpAG4AdAAvAHMAbwBhAHAALwAiAD4APABwAGEAZwBlAFUAcgBsAD4AaAB0AHQAcABzADoALwAvAHcAdAByAGEAYgBhAGoAYQBuAGQAbwBqAHUAbgB0AG8AcwAvAGQAZwBhAC8AcwB0AHUAZgBmAC8AdABlAHMAdAAuAGQAbwBjAHgAPAAvAHAAYQBnAGUAVQByAGwAPgA8AC8AVwBlAGIAVQByAGwARgByAG8AbQBQAGEAZwBlAFUAcgBsAD4APAAvAHMAbwBhAHAAOgBCAG8AZAB5AD4ACgA8AC8AcwBvAGEAcAA6AEUAbgB2AGUAbABvAHAAZQA+AAoA</StringHttpBody> | <StringHttpBody ContentType="text/xml; charset=utf-8">PAA/A....QA+AAoA</StringHttpBody> |
</Request> | </Request> |
</Items> | </Items> |
</code> | </code> |
| |
| ==== What happens when the user click on "See this in windows explorer" ==== |
| |
| |
| <code xml> |
| <!--- |
| |
| THIS CONTENT IS MOVED BY A PROCESS CALLED SVCHOST.EXE |
| |
| ---> |
| <?xml version="1.0" encoding="utf-8"?> |
| <TestCase Name="FiddlerGeneratedWebTest" Id="" Owner="" Description="" Priority="0" Enabled="True" CssProjectStructure="" CssIteration="" DeploymentItemsEditable="" CredentialUserName="" CredentialPassword="" PreAuthenticate="True" Proxy="" RequestCallbackClass="" TestCaseCallbackClass=""> |
| <Items> |
| <Request Method="PROPFIND" Version="1.1" Url="https://mysharepointserver/dga/stuff" ThinkTime="0" Timeout="60" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8"> |
| <Headers> |
| <Header Name="Depth" Value="0" /> |
| <Header Name="translate" Value="f" /> |
| </Headers> |
| </Request> |
| <Request Method="PROPFIND" Version="1.1" Url="https://mysharepointserver/dga" ThinkTime="0" Timeout="60" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8"> |
| <Headers> |
| <Header Name="Depth" Value="0" /> |
| <Header Name="translate" Value="f" /> |
| </Headers> |
| </Request> |
| <Request Method="PROPFIND" Version="1.1" Url="https://mysharepointserver/dga/stuff" ThinkTime="0" Timeout="60" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8"> |
| <Headers> |
| <Header Name="Depth" Value="1" /> |
| <Header Name="translate" Value="f" /> |
| </Headers> |
| </Request> |
| <Request Method="PROPFIND" Version="1.1" Url="https://mysharepointserver/dga/stuff" ThinkTime="0" Timeout="60" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8"> |
| <Headers> |
| <Header Name="Depth" Value="0" /> |
| <Header Name="translate" Value="f" /> |
| </Headers> |
| </Request> |
| </Items> |
| </TestCase> |
| </code> |
| |