求一可用的自更新源码(C/S)局域网 直连的数据库C/S程序?还是Socket程序? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 简单点的做法建一个表:UpdatesID(自增字段) , Version(Int64) , FileName(varchar) , FileData(Image) , RunOnOver(integer)发布更新的时候,把文件新版本写入Version,以及文件名,文件内容通过Stream比如Bolb字段FileData,可以写入多行软件启动的时候,首先读当前版本,连接数据库之后,首先从表中读取版本比当前版本高的纪录,如果有记录,就用Blob字段写入TFileStream就写到本地文件了,比较文件名看是否是更新主程序,如果是:DeleteFile(ChangeFileExt(Application.exeName,'.bak'));//删除备份文件ReName(Application.exeName , ChangeFileExt(Application.exeName,'.bak'));FileStream := TFileStream.Create(Application.exeName);然后把字段写入FileStream,之后重新启动即可其他非DLL的文件,直接写即可,无需更名 iis只是web server的一种,本需求只要有一个虚拟静态目录就行了,应该很容易配置的了 一个类似安装包的工具 loadresource和lockresource delphi 数据库还原问题? IXMLDOMNodeList里怎么加入IXMLDOMNode的? 使用tWordApplication时,如何取得当前编辑文件的文件名 各位兄弟是否有意思在程序里加上发送短信功能??? 如何知道现在webbrowse所显示的网页的http地址是什么? 一个ACCESS数据表,加了密。有什么工具可以将它的密码解开? 如何将字符转换成数值型字段。只能送23分 BDE 竟然不是免费发放的! 求SDK代码改成DLL,然后调用该DLL创建控件 html关键字替换问题
建一个表:Updates
ID(自增字段) , Version(Int64) , FileName(varchar) , FileData(Image) , RunOnOver(integer)发布更新的时候,把文件新版本写入Version,以及文件名,文件内容通过Stream比如Bolb字段FileData,
可以写入多行软件启动的时候,首先读当前版本,连接数据库之后,首先从表中读取版本比当前版本高的纪录,
如果有记录,就用Blob字段写入TFileStream就写到本地文件了,比较文件名看是否是更新主程序,
如果是:
DeleteFile(ChangeFileExt(Application.exeName,'.bak'));//删除备份文件
ReName(Application.exeName , ChangeFileExt(Application.exeName,'.bak'));
FileStream := TFileStream.Create(Application.exeName);
然后把字段写入FileStream,之后重新启动即可
其他非DLL的文件,直接写即可,无需更名