问题标签 [cen-xfs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1250 浏览

java - 关于 j/xfs 所需的信息

简而言之,j/xfs 到底是什么?

0 投票
1 回答
1816 浏览

java - 有人有使用 J/XFS 的经验吗?

我必须在我的 java 应用程序中使用 j/XFS 实现。我不知道 j/xfs 是什么?在谷歌上我也发现只有一个 15 页的小文件。那么有人可以给我一些链接吗?

0 投票
0 回答
6004 浏览

cen-xfs - 我在哪里可以找到 XFS API 参考和示例?

我想使用 CEN/XFS(金融服务扩展),可能在 C#.NET 中。

谁能告诉我如何以及在哪里可以找到 XFS 最新版本的 API 参考和示例?

.NET 框架是否有用于 XFS 的类和工具?

谢谢。

0 投票
1 回答
4871 浏览

c# - 我在哪里可以找到 XFS api

我想开发一个可以处理 pin pad 键盘 (EPP) 的示例 XFS 应用程序。所以我在这里找到了 XFS API 参考表格,但仍然不知道在哪里可以找到这些 API。我会很感激谁能帮助我。

0 投票
1 回答
4875 浏览

c# - 使用 p/invoke 从托管 Dll 接收 C# 上的 Windows 消息

我必须使用 p/invoke 从 C# 调用一些本机 C 函数。到目前为止,我将不同的方法和结构编组为 C# 没有任何问题。我的问题在于,我必须调用的许多方法都是异步的,并通过 Windows 消息将它们的最终结果返回到我的 WinForms 应用程序。例如,我调用了一个在 C 中具有以下签名的方法:

其中 lpszAppID 期望接收我的应用程序 (MyApp.exe) 的名称,而 hWnd 是指向我的应用程序的窗口句柄的指针,我通过调用

导入的签名是:

我调用方法如下:

最初,方法调用返回一个结果代码,表明请求的调用已被放入执行队列。在原始调用之后的任何时候,本机 Dll 完成请求的执行并通过其窗口句柄和名称向应用程序发送 Windows 消息。此方法的 Windows 消息代码定义如下:

有关 Windows 消息的更多信息:http: //msdn.microsoft.com/en-us/library/windows/desktop/ms644931 (v=vs.85).aspx

在我的应用程序中,我重写了 WndProc 方法,以便能够控制 Windows 消息,如下所示:

但我从未收到包含此代码的 Windows 消息。日志或事件查看器中没有错误。我知道我对该方法的调用成功,因为我没有收到任何错误代码,并且因为在调用其他方法之前必须打开会话,并且我可以成功调用需要会话处理程序的其他方法(也没有错误代码)。

我导入的签名和对该方法的调用位于我的应用程序正在引用的类库项目中。我在这里做错了吗?任何人都可以说明可能发生的事情吗?我无法访问本机代码,只能访问显示 Windows 消息由本机 C Dll 发送的测试应用程序。

提前感谢大家。

0 投票
1 回答
1345 浏览

c# - 在 C# 中跨越进程边界的窗口消息的 lParam 属性中收到的 IntPtr 填充结构

几天前我发布了这个问题,我对将 IntPtr 编组到结构有一些后续疑问。

事情是这样的:正如我引用的问题中所述,我在本机 Dll 上调用异步方法。这些方法与 Windows 消息通信它们的完成。我现在正确收到了 Windows 消息,并且在其中收到了一个 lParam 属性(IntPrt 类型)。根据我正在关注的文档,此 lParam 指向具有方法执行结果的结构。作为一个特定示例,我尝试填充的结构之一定义如下:

原始 C 签名:

我的 C# 定义:

现在有趣的部分:我调用的本机 Dll 属于一个独立的进程 FWMAIN32.EXE,它在同一台机器上运行(单个实例)。我相信我收到的窗口消息是特定于应用程序的(高于 WM_USER),它返回的 LParam 并没有真正指向我期望的结构,并且该结构位于 FWMAIN32.EXE 进程的内存空间中的某个位置。

最初,我尝试仅 Marshal.PtrToStructure (实际上希望很小)并且该结构充满了垃圾数据。我也尝试使用 GetLParam 获得相同的结果。最后,我尝试使用 ReadProcessMemory API 跨越进程边界,如这些帖子中所述:

C# p/invoke,从所有者绘制的列表框中读取数据

http://www.codeproject.com/KB/trace/minememoryreader.aspx

我得到异常代码 299(ERROR_PARTIAL_COPY:只有部分 ReadProcessMemory 或 WriteProcessMemory 请求已完成。)此外,我使用 ReadProcessMemory 得到的字节 [] 是:0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

我的代码:

我像这样使用它:

在这种情况下跨越进程边界是否正确?使用 lParam 作为 ReadProcessMemory 的基地址是否正确?CLR 是否将 lParam 变成了我无法使用的东西?为什么我得到 299 异常?我正确获得了 FWMAIN32.EXE 的进程 ID,但我如何确定 lParam 指向其内存空间内?我应该考虑使用“不安全”吗?有人可以推荐这种方法吗?还有其他方法可以自定义编组结构吗?

我知道一个帖子上有太多问题,但我认为它们都指向解决这个问题。提前感谢大家的帮助,很抱歉我不得不做这么久。

0 投票
0 回答
8976 浏览

financial - NDC+ 协议(NCR 直接连接)文档?

NDC 是 NCR 公司的 ATM 软件应用协议。谁能告诉我如何获得 NDC / NDC+ / Advanced NDC 的文件?因为我想基于它开发模拟器和应用程序(ATM 和主机)。
谢谢。

0 投票
1 回答
1026 浏览

xfs - “保险箱门必须打开才能调用命令 WFS_CMD_CDM_DISPENSE!”

这是我尝试使用 ATM 的内置工具 CDM320.exe 从 Wincr Nixdorf ATM 取款时收到的消息。一般来说,自动柜员机的保险柜门必须关闭才能成功完成取款。我不知道这个消息是从哪里来的!我编写了一个通过 XFS 3.00 API 分配的源代码。它适用于 GSS ATM,但不适用于 Wincor ATM。我如何确保 Wincor ATM 中的所有内容都正确配置并正常工作,例如 SPI、MSXFS.DLL 文件版本良好且工作正常,并且所有内容都兼容以协同工作?由于 CDM 测试器工具不起作用,我怀疑 ATM 本身而不是我的程序。

0 投票
1 回答
1235 浏览

cen-xfs - WFS_CMD_CDM_RESET 导致 WFS_SYSE_HARDWARE_ERROR

ATM 是 Wincor/Nixdorf 型号 ProCash 1500xe USB。我使用 CDM320.exe 工具来测试 ATM 的分配。当我在 ExecuteAdmin 菜单下运行 Reset 命令时,我得到以下输出:

[10:23:54] WFSAsyncExecute (WFS_CMD_CDM_RESET (321)) 返回 WFS_SUCCESS (0) [ReqID: 87]

[10:24:04] 事件 WFS_SYSE_HARDWARE_ERROR (2) 到达

[10:24:04] WFSAsyncExecute (WFS_CMD_CDM_RESET (321)) 以 WFS_ERR_HARDWARE_ERROR (-14) [ReqID: 87] 完成

有什么问题,我该如何解决?

0 投票
3 回答
6163 浏览

c++ - 实施符合 CEN-XFS 的新服务提供 (SP)

我们正在尝试开发符合 CEN XFS 规范的 windows 应用程序 + 设备驱动程序。此外,NOOB 到 WINDOWS 应用程序。

http://en.wikipedia.org/wiki/CEN/XFS

简单的架构流程:

为了了解 SP 的功能,我们最近采用了设备供应商之一 SP 的 DLL 来访问他们的设备,并且我们能够使用我们的 Windows 应用程序(基于 Eclipse MINGW)成功地与他们的设备通信。

然后我们开始在互联网上检查一些示例 SP 源来尝试我们的实现。(https://drive.google.com/file/d/0B60pejPe6yiSejRGQ3JnLUl4dzA/view

使用链接源,我们能够编译并创建输出 DLL。但是,当我们尝试访问 SP 时,它总是返回错误。

试验流程 1:

试用 FLow 2(刚刚删除了 SP 中 WFPOPEN 的 WINAPI 接口):

如果从 WFPOPEN 中删除 WINAPI 定义,我很困惑为什么 MANAGER 会向应用程序返回不同的错误代码。

WINDOWS 应用程序示例链接: https ://drive.google.com/open?id=0B60pejPe6yiSUEp1N2xzdGlXWFE&authuser=0

SP 源码(VS C++ 2010 Express): https ://drive.google.com/file/d/0B60pejPe6yiSejRGQ3JnLUl4dzA/view

XFSMANAGER 安装程序:ftp: //ftp.cencenelec.eu/CEN/WhatWeDo/Fields/ICT/eBusiness/WS/XFS/CWA15748/XFS310SDKInstall.zip

但是,当我在工作 DLL 和我创建的 DLL 之间进行调查时(使用 PE Studio)。我看到了一些差异。我创建的 DLL:

供应商创建的 DLL:

甚至我也确保在我的标题中添加了 Extern。

更新1:

根据电压提供者的指针验证了我的代码,我没有在代码流中发现任何错误。

申请代码:

SP 的 WFPOpen 调用:

使用 onSpOpen 的服务线程回调

执行期间的控制台输出

C:\gtkTrials\StandAloneApp\Debug>StandAloneApp.exe

(从 StandAloneApp 打印)

(从 SP DLL 打印)

(从 StandAloneApp 打印)

请求一些关于理解这个问题的指示。