Investigate JSON Serialization/Deserialization in OLE
- Dominant language
- C#
- Stars
- 4.9k
- Forks
- 1.1k
- Avg merge
- 20h 23m
- Merged PRs (30d)
- 103
Description
A known way to serialize/deserialize data is by using System.Text.Json. We should investigate how we might be able to use JSON to serialize/deserialize clipboard/drag data. JSON serialization would occur in [WinFormsDataObjectToNativeAdapter.SaveObjectToHGLOBAL ](https://github.com/dotnet/winforms/blob/main/src/System.Windows.Forms/src/System/Windows/Forms/OLE/DataObject.ComposedDataObject.WinFormsDataObjectToNativeAdapter.cs#L322) and ensure enough information is provided to be able to deserialize on the other side in [NativeDataObjectToWinFormsAdapter.ReadObjectFromHGLOBAL](https://github.com/dotnet/winforms/blob/main/src/System.Windows.Forms/src/System/Windows/Forms/OLE/DataObject.ComposedDataObject.NativeDataObjectToWinFormsAdapter.cs#L176). As part of this investigation we should be mindful about how this would work in harmony with the other work that is being done in the area and ensuring serialization/deserialization across different process still works as it does today
Useful links:
https://learn.microsoft.com/en-us/dotnet/standard/serialization/system-text-json/how-to
https://learn.microsoft.com/en-us/dotnet/standard/serialization/system-text-json/deserialization
Contributor guide
Assessment
This issue has not been assessed yet.