将串行守护程序+ PHP移植到Windows

时间:2011-05-17 20:15:19

标签: windows serial-port daemon

我有一个Linux系统:

  • 通过RS232端口与其他设备通信的守护进程。
  • 一个php + javascript网站,通过一个与守护进程对话 插座。

现在老板想知道将所有这些移植到Windowze上需要付出多少努力。

以前从未真正在Windows上编程,我想问一下这将是多么容易/多么困难以及选项是什么。

谢谢,

1 个答案:

答案 0 :(得分:2)

PHP可能会按原样运行。 Javascript在Web浏览器中运行,并将按原样运行。您的守护程序是Windows上的一项服务。显然它通过javascript在网页上监听来自网页的命令。

您没有说明您为该服务定位的语言。某些语言(如C#dot Net)具有内置库,用于创建可以暂停,停止,启动和与Windows服务控制系统交互的干净服务。 C#是一个很好的选择,可以轻松地安装和删除自己的服务,它支持很好的高级套接字控制来监听PHP和JavaScript代码。我使用perl,C#,C ++,甚至Visual Basic作为服务运行,所以选择是你的。

如果您选择的Windows语言编译为某些.EXE,则添加服务的低级方法如下所示。您将需要Windows资源工具包中的INSTSRV.exe和SRVANY.EXE,或者可以通过快速Web搜索轻松下载。

简短版本:

登录并调试后获取服务器runnign后,将APP服务器正常安装到C:\ Program Files \ APP目录。这将是连接到串行端口并通过套接字执行所需操作的应用程序。

将instsrv.exe复制到C:\ WINDOWS \ system32目录/

将SRVANY.EXE复制到C:\ Program Files \ YOURAPP

从命令提示符运行此命令 - INSTSRV YOURAPP“C:\ Program Files \ YOURAPP \ srvany.exe”

运行注册表编辑器(REGEDT.EXE)

在HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ YOURAPP下:创建'参数'键(文件夹)

在此键下,创建一个名为Application的REG_SZ字符串值并添加此数据C:\ Program Files \ YOURAPP \ YOURAPP.exe

关闭注册表编辑器,然后在管理工具打开服务控制台,或开始,运行,SERVICES.MSC,确认它被设置为自动启动和登录帐户是本地系统。然后取消选中允许服务与桌面交互。如果单击此按钮,只要它写入屏幕,它就会在Windows 7盒上中断。

启动服务,检查任务管理器,你会看到YOURAPP.exe inthere,如果你停止该服务,然后YOURAPP.exe就会消失。

长版本

详情请见http://support.microsoft.com/kb/137890