问题标签 [dynamic-data-exchange]

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 投票
2 回答
248 浏览

.net - 我该如何做这些 IPC 技术?

我记得在使用 C 和 win32 时,我有许多 IPC 技术。到目前为止,我还没有在 .NET 中遇到过它们中的任何一个,也没有在 C 之外看到它们,所以我想我想问我如何使用这些进程间通信技术?

  1. 共享/全局内存。只需分配可以由另一个进程更改而没有任何信号的 ram。

  2. 窗口消息。我记得使用 SendMessage 并使用 WM_USER + N 并在我触摸共享内存时告诉另一个应用程序,要求它更改文件或设置,有时还告诉其他应用程序我输入了一些击键来充当宏,因为我有时会感到懒惰。

  3. 动态数据交换。我尝试过,但永远无法让它发挥作用。据我所知(警告这可能是完全错误的),您将自己注册到全局消息或事件,另一个应用程序(通常是您的)将发送消息,这两个左右的应用程序可以相互通信,发布消息,您可以进行集成以这种方式在两个应用程序之间。我很想知道是什么取代了它。

还有一些我知道仍在使用和看到的命名管道。我记得人们推荐 IPC 的套接字,但我从不喜欢这样做,我知道它仍然存在并且可以在需要时使用。

我还想念什么,是什么取代了这种技术?我知道有很酷的全局互斥锁。我仍在寻找一种在两个应用程序之间发送消息的现代方式(第 2 点)。我一直想知道是否存在某种不在管道中的 FIFO 队列。就像 Windows 消息一样,除了我可以推送数据(如 1k)而不是每次发送消息和分配全局内存。

-编辑-凹凸。这个线程目前仍然与我相关。

0 投票
2 回答
928 浏览

c# - C# 服务器(不是 Web 服务器)和 PHP 之间的数据交换

我有一个持续运行的服务器程序(Linux 上的 C#/.NET 2.0 单声道),我想从 PHP 脚本连接到它以在网站上显示状态信息。

目的是创建一个(某种)实时浏览器游戏(无 Flash,无 Silverlight),我想使用 PHP 脚本从 C# GameServer 获取必要的信息,即当前单位位置、玩家资源、分数、可见地图等。信息每秒更新一次,甚至更快,但操作可能需要数小时甚至数天(即研究可能需要一周才能完成)

是否有任何库可以让我轻松地在程序的这两个部分之间传输信息?

我的想法:

  • 使用嵌入式 WebServer 并通过 PHPs SoapClient 连接。
    有没有人有使用免费嵌入式 WebServer 的经验(免费,因为游戏是免费的)?

  • 套接字编程和传输 JSON/XML/SOAP 块。
    对于 PHP/C# 的这种类型的网络通信,是否有任何简单的库可以自动从套接字读取,直到消息完成,然后将事件发送到游戏控制器?

  • 只需将每个用户和全局数据转储到数据库或 xml 文件
    中最简单的解决方案,但恕我直言,可扩展性不够。

你有什么建议?

提前致谢。

其他有类似问题的人的补充:

在发布此问题后进行更多研究后,我偶然发现了.NET System.Net.HttpListener,它甚至受单声道支持,所以我现在将使用它。它似乎拥有将 WebServer 嵌入到您正在运行的服务器中所需的一切。


0 投票
1 回答
212 浏览

windows - 运行对象表中的多个 Word2007 引用

与早期版本相反(参见此处),我发现 Word2007 为每个正在运行的 WinWord.exe 实例在运行对象表中放置一个条目。(使用 MS VC 6.0 提供的 IROTVIEW.exe!)
我正在尝试构建一个自动化 Word 的应用程序,并且我希望保持 Word 的隐藏实例对用户不可用,同时与单独的可见实例共存。有没有办法阻止 Word 在 ROT 中注册自己,或者确保当用户双击 Word 文档时,打开文档的是可见实例?

回想起来,也许我应该问一个不同的问题:当广播 DDE 消息并且有多个具有正确应用程序名称的窗口时,是什么决定了哪个窗口首先处理消息?我问是因为我意识到 doc、docx 扩展等的文件关联表明 DDE 将用于打开文档。

0 投票
2 回答
805 浏览

ipc - DDE 的用途和替代方案?

在我切换到 XP 的时候,我在 win98 的日子里尝试使用 DDE。我不能安静地让它工作,也不知道它可以或应该用于什么。

我想知道我可以使用哪些替代品?那时我想制作 3 个应用程序,无论它们以什么顺序打开,它们都可以与其他应用程序通信。我最终让他们都启动了一个单实例服务器应用程序,所有 3 人都使用该应用程序与服务器应用程序相互通信。DDE 更适合这种情况吗?

无论如何,DDE 的替代品是什么?我阅读了动态数据交换 (DDE) 的答案 - 仍然相关吗? 其中提到了 COM,但我不知道它们是什么或如何使用它们。它们也与我上面的情况有关吗?

DDE 的替代品有哪些?感觉就像 TCP(或命名管道)+Window Messages+Global memory 可以解决任何 IPC 问题。

0 投票
1 回答
272 浏览

c# - 如何通过 ac# 应用程序调用带有 UI 的外部 Windows 应用程序?

我们有一个带有 GUI 的程序 ( A.exe ) 和一个工具栏,它用一些文本来处理 NLP 内容。在那个工具栏中,我们有函数 A,它通过添加一些 xml 标签来转换文本。这里有人(老板)希望我创建一个 Web 服务调用函数 A。它告诉我动态数据交换(他几年前使用过),我看到了类似SendMessage的东西。

Web 服务将被 Internet 上的某个人使用:发送文本并以xml格式获取结果。当有人调用WS时GUI程序无法启动,因为它太慢了,所以有人建议一次性启动这个A.exe,WS会通过发送DDE调用来询问这个A.exe 。我不知道A.exe在并发调用的情况下会如何反应。

网络服务将:

  1. 将文本文件保存在目录中
  2. 调用A.exe
  3. A.exe将计算文本文件并创建 xml 文件
  4. WS 将循环直到 xml 文件存在
  5. WS 将获取 xml 并将其作为流发送给原始调用者

我想指出:

  1. DDE 很旧,似乎需要一个支持 DDE 服务器的程序。
  2. SendMessage 有点晦涩,因为我是一名 Java 开发人员。
  3. 我没有按照建议尝试命名或匿名管道进行调用。

谢谢你。

PS:用UI来构建WS调用服务端程序是异端吧?

0 投票
3 回答
1305 浏览

excel - 有没有办法响应excel中条件格式的变化?

我有一个 Excel 表,其中包含指向实时市场数据的 dde ​​链接。我使用计时器每秒查看 dde ​​价格。然后在满足某些条件时提交订单。我尝试了一个中间带有 DoEvent 的无限循环,它工作了 5 秒,然后冻结了工作簿。

有没有办法响应 dde ​​更新的变化?更改事件不会检测到它们。它只是检测用户何时进行手动更改。

有人告诉我,如果我有条件格式,就有办法获取该事件。因此,我可以创建一个单元格公式以在满足我的条件时变为真,然后在条件为真时将该单元格格式化为某种格式,然后选择格式更改事件。那可能吗?如果有怎么办。任何建议,将不胜感激。

澄清:我想在 VBA 中选择一个事件,该事件将提交交易股票的订单。我现在这样做的方式是使用一个计时器,该计时器循环遍历所有行,以在触发器列中寻找真正的单元格。一旦找到它就会关闭该行的标志(将 true 条件设置为 false)并提交订单。

问题在于,对于快速移动的股票来说,一秒钟是永恒的。因此,当触发器列中的单元格变为真时,我需要在 VBA 中引发一个事件,这样我就可以立即响应,而不是等待计时器类的第二个间隔。

据我所知,您不能调用值小于一秒的计时器。如果我可以使用毫秒,我的问题就会得到解决。我只是每 10 毫秒循环一次列表。

据我所知,我无法在 VBA 中创建另一个线程。如果可以的话,我会做一个无限循环,并在每次迭代后让它休眠 10 毫秒左右。

据我所知,我无法将 dde ​​直接拉入 VBA 甚至 .net,因为 MSDN 表示不再支持它。

我希望这可以澄清。所有建议表示赞赏。

0 投票
1 回答
520 浏览

c++ - 对话框变量 -- 没有向 DoDataExchange() 添加条目

在 C# 工作多年后,我又回到了我编写的旧 MFC 应用程序。但看起来我需要对一些事情进行复习。

我在现有对话框中添加了一个复选框控件。然后我使用类向导添加类型的非控制变量bool。变量按预期创建。

但是,我看到该DoDataExchange()方法中没有添加任何条目。当我尝试手动添加它时:

我收到 IntelliSense 错误:

“int &”类型的引用(非 const 限定)不能用“bool”类型的值初始化

1.为什么DoDataExchange()我添加变量时没有为我创建条目?

2.如果DDX_Check()期望 和int &,为什么类向导默认键入bool复选框值?

0 投票
1 回答
357 浏览

javascript - 我可以使用 json 文件作为 node.js 中的模块吗

我有一个 JSON 模块,其中包含这样的空容器:

我想知道我是否可以简单地通过使用array.push方法将数据从另一个模块推送到这里。就像是 ...

在此之后我可以在第三个节点模块中使用它......

最后每次调用的程序都会被刷新,就像动态数据库一样。

0 投票
2 回答
799 浏览

java - DDEMLException: 0x400a 客户端尝试建立对话失败

当我尝试运行 pretty-tools-JDDE-2.0.3-examples+jdde-binaries 的示例时

我收到了这个错误

我使用的是 Windows 10,我的 java 是

0 投票
1 回答
2788 浏览

c++ - 如何创建 DDE 服务器

我有一个用作 DDE 客户端的应用程序,并使用它接收到的数据来运行一些动画。此客户端安装在 Windows server 2012 上。我需要为 DDE 客户端应用程序提供少量变量才能正确运行动画。

在同一台机器上我没有安装 Microsoft Office,所以我不能使用 Excel 来完成这项工作。知道如何创建为客户端提供所需数据的 DDE 服务器。

在谷歌中搜索并没有得到关于如何实现这一点的明确教程。我有很好的 C/C++ 编程技能。但是,我需要指南、推荐的 API 或清晰的教程。

编辑:我需要服务器和客户端应用程序在同一台机器和同一操作系统上运行。

谢谢