Prevent the mapping of objects with a data length of 0 bytes#220
Prevent the mapping of objects with a data length of 0 bytes#220trojanobelix wants to merge 2 commits into
Conversation
|
Do you have a pre-built version with this fix in it? (Or with other fixes from the development branch latest commit). On the top github page here the latest and only release is old. Maybe time to update it? |
|
(Files deleted: New files later in this thread)
Here is the binary file for Windows. Unfortunately, I can't test it on Linux. |
|
The windows build is ok for me, but the version does not run, it asks for the .NET runtime. I tried different versions of the runtime but it always refuses to run. |
|
|
That is strange, it will not run at all (I have also the .NET 8.0.22 runtime). I also tried to copy over all files in the existing (running) tool to a new directory, copy over the files in the zip and rename it to the original name. Still not running. -edit- VS2017 does not seem to be available any more, what is recommended to use, if I want to build it myself? |
|
I use 2026, latest version |
|
Here is the new binary file for Windows. Unfortunately, I can't test it on Linux. |
|
.net8.0 |
|
Did not have time yet to test it, next week or so I need to change some things in my project. So then I will try it and give feedback. |
|
I unzipped the CANopenEditor_net8.0-windows.zip and tried to run EDSEditor,exe file but it does not do anything. I try to run it on W11. Application: EDSEditor.exe -edit- It seems that some dependent DLL's are not in the zip files. Also System.Configuration.ConfigurationManager.dll is missing for example. |
|
net8.0-windows.zip Setting true ensures that all DLLs coming from NuGet are placed in the build directory. It should work now. This makes the package quite large. There might be a more elegant way to do this, but to keep us moving forward, let’s go with a quick-and-dirty solution for now. |
|
I tried it out and it works for me now, all DLL's are found. Actually, the original release also contains way more files as the first zip file you posted, such as: a lot of language directories and other DLL's. As far as I could find you should package any dependent nuget-package in the installer package. So now back to the orignal problem: Which bug should this PR solve exactly? I can test it for you, so you can integrate the fix. PR #211 is not related I think, at least I tried to reproduce that specific problem but something else is going on there. I will continue in the 211 to avoid pollution of this thread. |
project.zip
Prevent the mapping of objects with a data length of 0 bytes.
The importer should prevent string objects with a data length of 0 from being imported.
In my opinion, string types without a defined length are formally allowed according to DS301, but:
ToDo:
Object 0x2000 in the OD is formally correct IMHO, but is created in the CANopen Editor with a data length of 0; for strings, the data length should be initialized to 1.