Comments (8)
@rickbrew @elachlan maybe I am misunderstanding. If my app only uses the WinForms form designer and the Resx files it creates when I upgrade to .Net 9.0 will something happen to those files that will remove the need to use BF and avoid this security black hole. The little I have played with .Net 9 for my applications seems to require I add below to project file.
<EnableUnsafeBinaryFormatterSerialization>True</EnableUnsafeBinaryFormatterSerialization>
from winforms.
Verify this issue for the workaround with the public System.Runtime.Serialization.Formatters Nuget package. It works. Hence closing this issue.
from winforms.
If people have to instal the NuGet package to get basic WinForms existing apps to work why is it being removed? And if the NuGet package is safe why isn’t it in the product? Will this requirement, break existing deployed applications? For many of us, this entire issue is very confusing. The only use of binary formatter in any application I work in is to decode stuff in form.designer that was written by WinForm designer. Wouldn’t it be better to do a 1 time upgrade of designer file and for the vast majority of applications not use problematic format? If this isn’t place to address this issue please let me know where is.
from winforms.
@rickbrew just a heads up. I imagine you are probably very much aware.
from winforms.
from winforms.
@elachlan Yup I’ve been paying close attention to this. PDN uses BF for various things, and I’ll be dealing with it soon-ish, possibly deferring the upgrade to .NET 9/10 for a bit while I’m working on it.
from winforms.
If people have to instal the NuGet package to get basic WinForms existing apps to work why is it being removed?
Because BF is a security black hole. It’s not safe.
Also, Paint.NET is not a basic WinForms app, and uses BF in situations where it isn’t usually used. It isn’t representative of the larger ecosystem in other words.
And if the NuGet package is safe why isn’t it in the product?
It’s not safe. It’s a compromise. To use BF going forward you essentially have to “sign the consent form” declaring that you understand the risks of using BF and are taking responsibility for it going forward.
Will this requirement, break existing deployed applications?
This will only be an issue when migrating to .NET 9+. Existing app deployments shouldn’t be affected.
from winforms.
@paul1956 You'll want to refer to the other issues etc. that discuss this, e.g. #6267 (comment) . IIUC it's something @JeremyKuhne et. al. are actively working on.
... at worst, you'll have to reference a new NuGet package to get this to work. We're working on making sure embedded resources just work (as they're considered trusted). I'm not sure what the BinaryFormatter workflow is for data sets, but we'll look to make sure we're fully clear how it might be impacted.
from winforms.
Related Issues (20)
- [Tracking]
- Hope to provide the ability to customize the title bar HOT 4
- [dnceng-bot] Branch `winforms/release/6.0` can't be merged to Azdo internal branch HOT 1
- [dnceng-bot] Branch `winforms/release/8.0` can't be merged to Azdo internal branch HOT 1
- The "span multiple rows or columns" and "align a control" links are not working in the DemoConsole application HOT 2
- TrackBar visually breaks with certain changes to certain properties HOT 4
- System.NullReferenceException: 'Object reference not set to an instance of an object.' occurs when click the help button in TreeView smarttag in the DemoConsole application HOT 5
- Unable to switch the tabs using mouse. Only switching the tab can be done through TabKey navigation at DesignTime HOT 5
- Can't Bind a Custom IBindingList Component to Controls at DesignTime in .NET 8 HOT 5
- Microsoft.DotNet.DesignTools.Client.DesignToolsServerException: Could not resolve type, 'System.ComponentModel.ComponentEditor HOT 2
- ObjectSelectorEditor,Selector,SelectorNode types are not available in the System.ComponentModel.Design namespace in .NetCore projects in WinForms HOT 6
- Undo in DemoConsole clears all item in ListView instead of undo previous move HOT 2
- InvalidOperationException thrown when calling OnItemChecked in class derived from ListView (in VirtualMode) HOT 11
- Unhandled exception has occurred when deleting ListView with setting its VirtualMode and VirtualListSize HOT 1
- In .NetCore project, Changes made in the Designer not being Serialized in the Designer.cs file. HOT 2
- Missing instances of designers in the DemoConsoleApp
- Refactor `lock` on `object` usage to `System.Threading.Lock` HOT 5
- The comboBox incorrect display when setting its DropDownStyle as Simple in the DemoConsole application HOT 1
- LinkLabel image display abnormally HOT 2
- Confusing Error Message Surfaces During Clipboard Operation HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from winforms.