草庐IT

Delphi 12.0

全部标签

xml - 将 XML 转换为 X12 并将 X12 转换为 XML 的最佳方法

寻找工具/库将XML转换为X12(270-医疗资格请求),然后将X12响应(271-资格响应)转换回XML。这将嵌入到服务器应用程序中(将考虑任何目标语言)。我有过编写自己的X12解析器和生成器的想法,但这个项目很可能会扩展到其他X12事务,我想找到一个可扩展的解决方案。 最佳答案 我遇到了这个:OopFactoryX12解析器-https://x12parser.codeplex.com/releases/view/106524难以置信。源代码结构良好,一切都建立在第一次打开的基础上,甚至有单元测试。拉入我的项目,它转换了我试过的

xml - Delphi 中是否有将 XML 日期和时间转换为 TDateTime 的函数

XML日期和时间格式'-'?yyyy'-'mm'-'dd'T'hh':'mm':'ss('.'s+)?(zzzzzz)?是•'-'?yyyy是代表年份的四位或更多位可选负号数字;如果超过四位,则禁止使用前导零,并且禁止使用'0000'•剩下的'-'是日期部分之间的分隔符;•第一个mm是代表月份的两位数字;•dd是代表星期的两位数字;•“T”是一个分隔符,表示后面是时间;•hh是代表小时的两位数字;如果表示的分钟和秒为零,则允许使用“24”,并且这样表示的日期时间值是第二天的第一个时刻(·值空间·中日期时间对象的小时属性的值不能大于23);•':'是时间部分之间的分隔符;•第二个mm是代

xml - 使用 Delphi XML 数据绑定(bind)向导时不存在必需的标记

我正在使用XMLDataBindingWizard在DelphiXE2.该架构需要这种类型的标签:问题是,如果我不添加任何元素,例如Values-组,不会有-tag,XML文件将无法通过XSD验证.如果接口(interface)提供了“添加”Values的方法,这可能不会成为问题。-标签。是否有处理此问题的标准方法,或者我是否错误地使用了生成的代码?简单地说,是否有任何方法,变通或其他方法,使用来自DataBindingWizard的代码,产生以下XML(这是在没有子节点时使用上述模式进行验证所需要的),给定HeaderType,ValuesType和EventsType是复杂类型:(

windows - 获取名称/描述 Startaddress 或从进程中的线程 (Delphi/Pascal)

ProcessHacker在C中有一个进程管理器。当您在流程管理器中双击某个流程时,例如探索者您会看到很多信息,包括:与流程相关的主题。PDD、周期增量开始、地址、优先级。好吧,我尝试在Delphi中做类似的事情,但我只得到TID和优先级...我不能把信息开始地址如下:“msiltcfg.dll0x258!”或者只能返回00630EFA。(原始)应用程序黑客显示下图中的信息:我该如何解决这个问题?基于下面的代码示例。procedureTForm1.Button7Click(Sender:TObject);vartbi:THREAD_BASIC_INFORMATION;hThreadSn

windows - 如何在 Delphi 中为 Windows 7 上的 Windows 搜索集成编写属性处理程序

我想为我的应用程序的文件格式创建一个属性处理程序。我只需要它在Windows7中工作。我知道我需要为不同版本的Windows在32位和64位中构建它,所以不需要提醒我这一点,尽管现在我被卡住了使用Delphi2007。我只需要指出正确的方向即可开始。我应该创建哪种类型的项目,以及完成这项工作还必须执行哪些其他步骤? 最佳答案 创建一个ActiveXLibrary项目(File>New>Other>DelphiProjects>ActiveX>ActiveXLibrary),这将生成一个带有默认类型库的DLL项目。打开该项目,向其中添

windows - 如何在 Delphi XE5 上安装 Cindy Component?

我安装cindycomponent在delphixe5中安装dpkCindyDBXDXE5.bpl时出现此错误:Can'tloadpackageC:\Component\cyComponents6\DbExpress\dpkCindyDBXDXE5.bpl.%1isnotavalidWin32application.如何解决? 最佳答案 您可能正在尝试加载64位版本的包。这不应在设计时加载。构建Cindy库的说明包括构建32位包和64位包。确保同时构建两者,但只有32位包(pkCindyDBXDXE5.bpl)应与dpkCindyD

Windows 10 作为主机 VMware workstation 12 Player 无网桥适配器 (vmnet0)

我正在运行Windows10操作系统并希望复制我在Windows7中的内容,也就是说,一些运行不同操作系统的虚拟机。VMWare声明它支持Windows10作为VMWareWorkstation12的主机。到目前为止,我无法使用网桥,因此guest计算机无法连接到网络,也无法从我的计算机外部访问(作为服务器)(就像以前作为主机运行Windows7时那样)).我应该补充一点,在查看网络适配器时,最初没有,直到我修复了VM安装。现在我可以看到VMnet1和VMnet8(据我所知是NAT和HostOnly连接类型)。此外,我正在运行KasperskyAV。我尝试过的:1)编辑适配器(网络和共

windows - 检查菜单项是否在 Delphi 中使用 API Win32 启用

我在这段代码中遇到的问题是,当菜单项被禁用时,然后在控制应用程序中传递代码“PostMessage”导致崩溃,因为我需要检查菜单项是否已启用,然后使用PostMessage。HandleMenu:=GetMenu(ParentAppHandle);HandleMenu:=GetSubMenu(HandleMenu,6{menuitemno});item:=GetMenuItemID(HandleMenu,12{submenuitemno});PostMessage(ParentAppHandle,WM_COMMAND,MakeWParam(item,0),0);

c++ - 使用 D3D12Device 调用 DuplicateOutput 失败并显示 E_NOINTERFACE

我一直在尝试制作一个利用桌面复制api的应用程序,但没有使用directx的经验,结果证明这是一个相当大的挑战。似乎一切正常,直到我调用output1->DuplicateOutput(),此时它返回E_NOINTERFACE。msdn文档中未定义此错误,因此我无法诊断问题。我认为这段代码应该可以工作,但我一定遗漏了一些东西。#include#include#includeintmain(){HRESULThr;ID3D12Debug*debug;hr=D3D12GetDebugInterface(IID_PPV_ARGS(&debug));debug->EnableDebugLaye

windows - 如何在 Delphi(或通过 Windows API)的 RDP session 中唯一标识由 EasyPrint 打印机重定向的打印机?

我喜欢在Delphi的RDPsession中唯一标识由EasyPrint打印机重定向的打印机。每次用户连接到RDPsession时,打印机的名称都会更改,例如:“HPLJP1606(重定向6)”。最后一个数字(6)始终在变化,以确保打印机名称在整个服务器中是唯一的。在我的程序中,我喜欢保存一些与打印机型号相关的打印机相关参数。我期待找到类似GUID的东西来识别某个地方的打印机,有点像MAC地址。它应该允许我的程序确保它与之前选择的打印机相同。我和我的同事研究了这个解决方案:HowcanIuniquelyidentifyaprintqueueonWindowsevenifthequeue