The CEN/XFS discussed here is the abbreviation of extensions for financial services, which is a set of things developed by Europe to unify the access standards of international financial devices. It is a unified access standard for a set of ATM platform equipment that domestic banks have actively introduced from abroad in recent years. I am mainly working on a complete framework designed by Microsoft, which is based on Windows systems. This Protocol also has JAVA Implementation version J/XFS. If you want to be a Linux or UNIX platform, you can check it on your own. Here I just want to briefly describe my understanding of the XFS standard and some experiences in using XFS in the project development process. As I prefer to develop on windows, therefore, we will only introduce the competitor's library.
The following discussions are based on the XFS official standard version 3.10 documentation (support for the device's SNMP protocol has been added from version 3.03 to version 3.0 ).
1. Download: XFS official standard documentation v3.10, official XFS-SDK-v3.03, official XFS-MIB-SDK-v3.02, OpenXFS-0.0.0.5, OpenXFS-0.0.0.5 revised version, SP framework and samples, design instructions and use help, other reference.
2. I will not go into details about the basic concepts of XFS. If you have any questions, please refer to the first part of the XFS official document. I have made some non-professional Chinese comments on the official English documents, hope to help you. To develop XFS, the first part of the official document is required. It took me two weeks to read it three times.
3. I searched the internet for a long time and found the source code of an open-source openxfs framework. It is a complete implementation of XFS manager and framework standards based on the Microsoft MFC Library in accordance with The XFS 3.0 standard, it is compatible with the standard SDK package provided by the official organization and implements the same xfs3.0 standard. The official SDK for Microsoft prototype implementation does not support XFS manager multi-thread implementation, but openxfs implements XFS manager that supports multiple threads. This will be of great help to our complete understanding of how the XFS standard is implemented and the specific operation process. The openxfs provided here is a version that I have commented on and made a few corrections. If you are interested, you can download the openxfs of the original version.
4. Because openxfs is designed based on the Microsoft MFC framework, it is inconvenient to use and is not universal. Many friends may not like MFC. Therefore, in the process of reading and understanding the XFS standard, I adapted a framework and example for developing SPI using pure Win32 API functions instead of MFC according to the basic idea of openxfs. You can understand and use openxfs in combination with standard documents, and hope it will be helpful to everyone.
5. some people say it is a driver, which can be understood in a broad sense. But technically, it is not a Windows system-level driver. It can only be said that the device provides services to upper-layer applications, writing an SP does not need to know the driver programming in windows. You only need to know how to program windows APIs or use MFC. However, the framework implemented by Microsoft does learn from some exquisite design ideas in the device driver architecture of the Windows system, and is implemented by some simple and easy-to-understand technical means, very good and powerful.
Finally, I would like to pay tribute to my colleagues in Shanghai HEKANG Industrial Development Co., Ltd. and thank you for your support and help for my work in HEKANG. This blog is also a summary of my work in XFS. I hope to provide some reference and help to later users.