【问题标题】:Attempting to use Boost Asio to create a remote server-client尝试使用 Boost Asio 创建远程服务器-客户端
【发布时间】:2013-03-31 20:33:48
【问题描述】:

我想从运行在 Windows 上的应用程序访问一组值/数据。我对这一切都很陌生(具有基本的编程经验),所以现在我发现使用 Boost Asio 应该对我有帮助。我查看了网站上的教程,但它们没有帮助,因为 - 我很难理解代码并且很难想象它的实际作用。

我基本上“应该”做的事情-

  • 在 Windows 机器上编写一个“服务器”程序,从应用程序获取数据(虽然我仍然不清楚 如何我首先获得该数据地方,所以我的问题似乎是多余的。)
  • 在运行 Ubuntu 的单独机器上编写“客户端”程序。客户端程序从服务器获取数据并(现在)显示这些值。这些值基本上是一组位置和旋转(我认为更多细节在这里并不重要)并且必须显示出来。

我查看了here 给出的示例,但没有描述(正确)或解释它们实际上做了什么(就像我说的,我很新,所以我需要一些外部帮助才能正确理解所有这些)

我上面写的显然不是最好的方法,如果有人能提出一些更简单/不太复杂的方法,那么我也会很感激,也会进一步研究。

我有强烈的感觉这个问题会被关闭,因为它可能不符合“规定”,但谁能解释/帮助我解决这个问题?

【问题讨论】:

  • 尝试更好地指定您到底想要做什么。服务器/客户端不太清楚。
  • @WELLCZECH - 我已经编辑过了。我希望现在更清楚了。谢谢
  • 我建议从 the basics 开始。如果您可以发布您难以理解和可视化的代码区域,我们可以说明它的作用。
  • @TannerSansbury - 谢谢。一旦我了解更多细节,我将对其进行调查并编辑我的查询/开始新帖子。

标签: client-server boost-asio


【解决方案1】:

根据您想要做什么,制作一个成熟的应用程序服务器可能是矫枉过正。
如果可以将这个“来自在 Windows 上运行的应用程序的一组值/数据”放在一个文件中,您可以使用 FTP 或 SMB 或 HTTP 或...等方式共享其目录。

在 linux 端,您可以挂载目录并像使用本地文件一样使用该文件。

您不需要任何编程技能。


如果您需要更多按需实时方法,您可以在 Windows 机器上使用网络服务器。如果您请求页面(与请求网页相同),它可以运行脚本(甚至启动应用程序)以使用数据构建文本文件或 JSON/XML 字符串并将其发送回。

这是 webservers 101,有很多教程。程序员不必担心套接字之类的东西:它被抽象出来了。


为了更好地回答您有关如何从 Windows 应用程序获取数据的问题,我们需要了解有关该应用程序的更多信息。


关于 Boost::asio:恕我直言,将其视为网络的包装器,具有事件驱动编程的可选功能。懂基本编程的人都可以学,但是上手并不容易,需要一些时间。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多