2010-09-17 68 views
0

我在C++编写的程序的任何网络技术,我需要一个Web界面来控制程序和这将是有效的和最佳的编程语言...集成C++代码与Linux上

+0

你的程序是做什么的? – 2010-09-17 09:17:24

+0

你在什么操作系统上? – 2010-09-17 09:18:12

+0

它是一个网络爬虫..我使用Ubuntu的 – rrama 2010-09-17 09:22:29

回答

0

如果它的Windows,我可以建议你为你的程序注册一些COM组件。至少从ASP.NET可以轻松访问。

您可以尝试一些内存交换技术,如通过本地主机套接字连接进行读取/写入。但是它需要你先设计一些交换协议。

或通过数据库交换数据。您编写从数据库写入/读取数据,Web前端读取/写入数据到数据库。

+0

ohh但我只对linux感兴趣 – rrama 2010-09-17 09:19:51

-1

这并不像看起来那么简单!

你的C++程序(大部分是长时间运行,否则为什么需要控制)和一个典型的web程序在接收到http请求时启动并在发送回复后死亡。

您可以使用其中一个基于Java的Web服务器,它可能有一个长时间运行的任务。

或者,您可以使用数据库或其他存储作为通信介质: - 您的程序会周期性地将其当前状态写入众所周知的表中,当用户调用控制应用程序时,它会读取当前状态并给出适当的设置然后将其存储在数据库中,并在下一次轮询请求时由程序执行操作。

如果您有排队机制可用,它可以更好地工作,因为它可以事件驱动而不是轮询。

0

你可以使用一个框架像Thrift一个PHP/Python的/红宝石/不管Web应用程序和C++守护进程之间的通信,或者你甚至可以多走一英里(大概比仅仅使用Thrift这类技术更难),并为您选择的脚本语言编写语言绑定。

这两个选项中的任何一个都可以让您使用更适合该任务的语言编写面向Web的代码,同时保持C++中的“繁重”。

1

您的应用程序将只需要收听您的Web应用程序将发送给它的网络消息。

任何Web应用程序(无论语言)实现都可以使用套接字,所以不用担心细节,只需确保您的应用程序管理您为其制定协议的消息。

现在,如果你想保留所有的C++,你可以为你的web应用程序使用CPPCMS。

0

你看过Wt吗?它是一个以网页应用程序为中心的面向窗口小部件的C++框架,拥有坚实的MVC系统,ORM,...