2010-07-08 159 views
18

我开发了一个php-mysql网络应用程序,这是一个基于学校的项目。 我的客户希望将此应用程序转换为.exe文件,以便可以将其安装在他的桌面上并使用它。将php网站转换为.exe桌面应用程序

如何将php网站转换为.exe文件,并且可以在不需要数据库/服务器软件的情况下运行?

请指教。

+5

你的客户的愿望有没有意义。告诉他们这是客户端服务器应用程序,而不是桌面应用程序。 – 2010-07-08 12:42:48

+5

是一个足够好的快捷图标吗? – corymathews 2010-07-08 13:07:18

+0

我认为[this](http://www.ambambalam。se/bamcompile /)是你需要的。 – 2012-10-14 20:09:47

回答

11

便捷的解决方案不是将网站转换为.exe。我认为如果你有portable server/php/mysql会更好,并使用自动运行的USB或CD工作。

+0

自Windows 8以来,出于安全原因,自动运行无法在USB上工作。您可以尝试https://www.exeoutput.com/或制作CDFS分区http://www.visualdesigning.com/articles/how-to-create-autorun-usb-drive/。在这里你有一些其他的PHP EXE编译器http://www.thefreecountry.com/compilers/php.shtml – garatu 2016-04-21 23:58:21

3

不可以。您至少要删除对MySQL的依赖关系(并使用sqlite代替)。

然后,你要么必须:

  • 转换的网页到Windows对话框。这将彻底改变你的应用程序(例如,原本是http的“表单提交”将完全不同)。在这一点上,编写.NET应用程序会更容易
  • 捆绑安装PHP的Web服务器(例如Apache)。
+0

第二个选项适合我,使用wapache。它也支持sqlite。 – 2011-02-05 03:58:39

1

不知道这会是可能的,但看看:

WinBinder

WinBinder是一个新的开源 扩展库,脚本 编程语言。它允许PHP 程序员轻松构建本地 Windows应用程序。

alt text http://winbinder.org/pic/fe_big.png

+0

如果我正确地理解了这个问题,那不是他要求的(因为那将是应用程序的完全重写)。 – dbemerlin 2010-07-08 11:45:51

+0

@dbemerlin:是的,除非有人提出真正的解决方案,否则转换似乎是不可能的,我刚刚公布了他可能想要采取的其他步骤。 – Sarfraz 2010-07-08 11:48:49

+1

完整的重写不是一个简单的选择!即使他决定,处理PHP的回声也与GUI操作大不相同。无论如何WinBinder是不错的概念。 – Yousf 2010-07-08 11:56:51

5

简短的回答:不可能。

长答案:这取决于。

您可以在他的机器上安装Web和数据库服务器(或创建一个安装程序)并在他的机器上本地运行应用程序。

你保持一个服务器上的应用程序,只是提供了打开他的浏览器,它指向的应用程序的URL的启动。

由于Artefacto提到,切换到SQLite而不是MySQL可能是一个好主意,但根据应用程序的写入方式,它可能需要很多代码和SQL查询更改。

+1

它可能与php桌面,请参阅https://code.google.com/p/phpdesktop/ – 2014-03-24 12:46:09

6

NuSphere的PhpDock声称这么做:它充当部署助手并附带一个捆绑的Web服务器。但是,我不知道数据库部分,它不是免费的。

PhpDock使您可以将任何PHP Web应用程序部署为独立Windows桌面应用程序,而无需对代码进行任何更改。

我不知道那个特定的产品,但我一直在使用他们的IDE多年,我很高兴。

1

只需在C或C++中创建一个简单的程序,即可在开始菜单,桌面和快速入门中添加图标。如果您的客户点击图标,它将打开默认的OS浏览器并在线指向您的应用程序的URI。

这可能愚弄你的客户:)

或者,也许这将是足以让他(他可能会问你将它转化成exe,因为他不记得URI或东西 - 问他是什么原因)。

+0

嗨,谢谢你的答复。在这里,将php应用程序转换为独立应用程序的唯一目的是将产品作为软件销售给客户。因此,一旦他们支付了金额,他们将处理CD上的.exe文件,他们可以使用它来运行该应用程序。此外,该软件必须允许在系统上进行一次安装,以便在同一系统中不会再次使用同一张CD(如正版OS安装)。谈到这一点,SQLite可以用作数据库而不是mysql。我可以重写应用程序,而不是问题。 Iam也在考虑GTK选项。 – 2010-07-09 11:47:38

+0

但我不知道如何开发使用它。没有适当的文件可用。顺便说一下,我遇到了这个软件,将一个PHP应用程序转换成一个.exe文件。它不是免费的,但: http://www.byterun.com/website-compiler.php – 2010-07-09 11:48:09

+0

嗨,我有这个产品,声称将php应用程序转换为独立的应用程序。 http://www.roadsend.com – 2010-07-11 07:35:01

2

另一个尝试是将您的PHP项目变成PHP-GTK(http://gtk.php.net/)。 还有一个尝试给HPHP一个尝试(http://wiki.github.com/facebook/hiphop-php/)并尝试将生成的C代码转换为.NET中的.DLL之类的东西,并将其用于编写用户界面(如C#)时的逻辑。

+1

抱歉,从头开始在GTK中开发我的应用程序是一件痛苦的事情。 – 2010-12-08 09:39:06

6

尝试使用特定于站点的浏览器。它会生成一个桌面应用程序,它基本上是一个运行到您的Web应用程序的门户。试试这个:

https://mozillalabs.com/prism/

它允许很多先进的功能,如系统托盘图标和这样。我用过很多次了!

希望这有助于JL

+0

谢谢你的提示,我认为这是最好的解决方案,它已经帮助了我。 – 2012-03-13 14:32:31

+0

很高兴我可以帮助:)另外,我有时发现棱镜有点难以部署在更大的规模上,因为它不是可以安装的,而是说你要打包你的特定的ssbs。如果你真的想要部署,我在我最近的一个项目中做了什么,是在aptana2中创建一个空白的adobe空气模板(不使用3,因为它不支持SDK的插件),并简单地使用: ' < meta http-equiv =“REFRESH”content =“0; url = http://你想要重定向到”> ' 要链接到实际的网站,如果你使用最新的SDK ,它运行一个webkit渲染引擎并运行html5 – 2013-01-28 06:22:25

+0

我实际上可能会编写一个关于此教程的教程并在某处发布。大声笑。这个特定的企业需要这样做,因为在带有地址栏的浏览器中运行等会打开其他员工可能打开的标签的漏洞,而ssb没有这样的漏洞。反正,我链接到它,如果我做一个。干杯! – 2013-01-28 06:27:39

1

您可以使用xampp开源项目将您的PHP站点打包为可执行文件。

使用以下步骤: - 1.下载Xampp源代码。

  1. 在htdocs目录中添加您的PHP文件(Ref: - https://sourceforge.net/p/xampp/code/HEAD/tree/win32/xampp/htdocs/)。

  2. 现在编译XAMPP源代码并分发它。

  3. 数据库创建和初始数据加载到数据库中,你可以这样的方式您的网站,如果没有创建数据库,它重定向页面代码以install.php使用提供的SQL文件,做数据库创建和数据加载任务(您需要添加包含数据库结构和所需数据的SQL文件)。

不要忘记删除安装后的数据库的SQL文件。

相关问题