Comments (12)
Bad news: The used dlls don't exist in current ETS5 any more. And the dlls in the CV directory don't support version 20 of the scheme. :(
from createknxprod.
The xml is the same as the files in a knxprod-file. I just put everthing in one file. You can get the xsd of the xml from ETS dll Knx.Ets.Xml.ObjectModel.dll:
using (var fileStream = new FileStream("knx.xsd", FileMode.Create))
using (var stream = DocumentSet.GetXmlSchemaDocumentAsStream(KnxXmlSchemaVersion.Version14))
{
while (true)
{
var buffer = new byte[4096];
var count = stream.Read(buffer, 0, 4096);
if (count == 0)
break;
fileStream.Write(buffer, 0, count);
}
}
from createknxprod.
@thelsing
Would it also be possible to use a more recent schema version with is used in latest ETS5.x?
Only the latest schema contains the required stuff for KNX data secure for example.
from createknxprod.
Sure. You only need to regenerate the xml class from xsd. I used xsd.exe + search and replace. I want to use the generator forked in my github account for this.
from createknxprod.
This one:
https://github.com/mganss/XmlSchemaClassGenerator
from createknxprod.
@thelsing
Could you elaborate a bit more what is needed to get a recent XML schema from ETS5.7 like this
<xs:schema xmlns:knx="http://knx.org/xml/project/20"
and use it with this tool?
Do I just have to copy the two DLLs Knx.Ets.Xml.ObjectModel.dll
and Knx.Ets.Xml.ObjectModel.XmlSerializers.dll
from the ETS5.7 dir to the ETS4 folder which contains the converter engine DLL and overwrite the existing DLLs which have the same name?
The two DLLs in the ETS5.7 dir contain schema20. The DLLs in the ETS4 dir (converter) contain only schema11.
from createknxprod.
I would switch to the dlls from ETS 5.7.
Maybe the signing process needs to be changed a bit, but I can do this when we can create a xml in the new schema.
So the steps are:
- get a xsd from ets 5.7 dlls.
- create a new Xml.Project.cs with the xmlSchemaClassGenerator (It seems I already did this for schema version 17.)f
- change references to dlls from ETS5
Now you should be able so create and save the new xml format.
If we are lucky signing still works with the ETS5 dlls. If not we will have to experiment a bit.
from createknxprod.
We really need to update to the latest schema 20. This is also required for data secure stuff.
@thelsing Could you do that again?
from createknxprod.
I'll try. The problem is that the ETS4 dlls probably don't support this schema. So I need to use the dlls from ETS5. Let's hope that the methods are still the same for ETS5.
from createknxprod.
Steps for generation of code from xsd:
XmlSchemaClassGenerator.Console.exe -e -0 knx.xsd
s/Xml.Project/CreateKnxProd.Model/ on Xml.Project.cs
Change type of ReplacesVersion to string
from createknxprod.
So sad.
So the only option to get new ETS features working in the future somehow, is to βreuseβ existing signed product databases and try to emulate an existing product.
from createknxprod.
This is fixed in dev-branch.
from createknxprod.
Related Issues (20)
- English version HOT 4
- Add DatapointType to knxprod HOT 1
- InvalidOperationException HOT 6
- Add support for KNX data secure
- Interaction between Parameters and knx stack. HOT 4
- Parameters Values. HOT 4
- Please, make new .zip release HOT 1
- "ReplacesVersions" not working in Release_23 HOT 6
- Show the version number and currently edited file name/path in the headline
- Behavior of "MediumTypes"
- Check for not allowed characters HOT 1
- "I" flag (Init Read / Initialisieren) is missing HOT 1
- New version issues HOT 1
- problems with my sonoff has a physical participant address
- xml to knxprog
- Export fails with MissingMethod Exception HOT 3
- Question: Where does the limit (50) for "Max SecurityGroupKeyTable Entries" come from?
- Program failed to download to device (ETS tried to write a protected or a non existing memory block) .
- how to assigned the dpt to specfied sub-dpt type HOT 4
- Question regarding DIY Arduino solutions HOT 2
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 createknxprod.