让我的网络用户使用PHP从我的网站下载自定义.exe的最佳做法

时间:2011-08-21 08:30:25

标签: php

我尝试在我的网站上实施一个系统,让用户在下载前下载要更改的文件。

我有一个主文件(.exe程序),里面有一个变量,必须为每个不同的用户进行更改。

最简单的解决方案是每次用户想要他的个性化exe时更改xml文件中的变量,然后使exe文件读取外部文件。但我不希望用户下载多个文件。

这可能吗?使用php我可以在编译的程序中更改参数吗?感谢您提供任何帮助和建议!

3 个答案:

答案 0 :(得分:2)

如果你真的真的知道你在做什么,并且你确切知道需要在文件中翻转的位,那么是的,可以用PHP修改.exe文件。否则,您必须更改.exe构建的源文件或其他文件,并在将其发送给用户之前在服务器上编译该程序。

答案 1 :(得分:1)

从理论上讲,这当然是可能的(PHP是图灵完成的),但正如其他答案所述,这将是不值得的麻烦(考虑到你必须要问是否有可能表明你必须最后调查进入标准exe格式的几天)。 我推荐以下之一: 1)使用配置文件压缩程序;要么使用单独的启动程序(例如Java [JAR是ZIP文件]),要么添加程序本身读取的配置文件。有许多用于生成ZIP文件的PHP库。 2)使用服务器本身更改的源代码编译程序;但是,根据您的服务器配置和您使用的编程环境,这也会变得非常复杂。如果您从未管理过虚拟服务器,我甚至不会建议您选择。 3)如果您可以假设用户获得了一些稳定的Internet访问,您可能还会考虑让hir下载标准可执行文件,稍后程序本身将下载其他配置(例如,通过将用户名发送到服务器)。但是,这会产生您可能想要避免的依赖关系(您的用户可能无法在没有Internet访问权限的计算机上使用它,并且您应该断言您的服务器大部分时间都处于运行状态。)

答案 2 :(得分:0)

虽然这可能是可能的,但我怀疑这是值得的麻烦。除非你试图打击盗版或其他什么。为什么不直接为用户提供带有.exe和config .xml的自定义.zip文件?

[OP评论后编辑]
我假设您要编辑的是Facebook ID /用户名?好吧,尝试使用一些像“THISNEEDSTOBEREPLACED”这样的唯一字符串编译基本文件,然后使用一些二进制安全函数来替换它。虽然记住,如果字符串长度不匹配,事情会变得棘手。