`
icrwen
  • 浏览: 261591 次
  • 性别: Icon_minigender_2
  • 来自: 济南
社区版块
存档分类
最新评论

cakephp工作笔记25----web项目打包生成exe,备份初始化信息

    博客分类:
  • php
阅读更多
1)打包内容phpnow+web系统+mysql
2)打包步骤:参考http://merry05.blog.hexun.com/59440288_d.html
http://hi.baidu.com/vhion/blog/item/75780f4cbef16cf1d62afcec.html
详细步骤:1)将项目web文件发放到htdocs目录下
          2)修改pn/conf.default/httpd-vhosts.conf以及 httpd-2_0.conf

NameVirtualHost *:80

<VirtualHost *:80>
    DocumentRoot ../htdocs/granary/app/webroot
    ServerName default:80
    ErrorLog logs/default-error_log
</VirtualHost>

Alias /myphp/  ../htdocs/
<Directory ../htdocs/> 
   Options Indexes MultiViews 
   AllowOverride None 
   Order allow,deny 
   Allow from all 
</Directory> 
3)修改\Apache-20\conf\httpd-win.conf
4)把要导入的数据库脚本granarydblast.sql拷贝到\MySQL-5.0.83\bin
5)修改Init.cmd
rem 修改 MySQL root 密码
:mysql_setpwd
%myd_dir%\bin\mysqladmin.exe -uroot -ptoor password 111111

导入数据库数据文件
%myd_dir%\bin\mysql.exe  -uroot  -p111111 <%myd_dir%\bin\granarydblast.sql
5)修改Setup.cmd
@echo off

rem -- http://phpnow.org
rem -- YinzCN_at_Gmail.com

setlocal enableextensions
set Sys32=%SystemRoot%\system32
set Path=%Sys32%;%Sys32%\wbem;%SystemRoot%
prompt -$g
title 粮库自测系统 - 系统运行环境版本选择

set package=Package_7z
set htd20=2.0.63
set htd22=2.2.11
set myd50=5.0.83
set myd51=5.1.36

:htd_choice
set htd_e=22


:myd_choice
set myd_e=51


title 粮库自测系统 - 正在解压 ...

"%cd%\7z.exe" x -x!Apache-%htd_e%* -x!MySQL-%myd_e%* %package%

del 7z.exe 7z.dll %package% /q

echo.
echo   # 安装完毕!是否执行系统初始化?

call Init.cmd

:end
title %ComSpec%
start /b del setup.cmd ^& exit /b

6)用7-zip打包Package_7z生成Package_7z.7z
7)将Package_7z.7z去除后缀名,然后用WinRAR打包,选择自解压,在解压后命令输入Setup.cmd
8)MySQL创建新用户并赋予权限的命令:
grant select on databasename.* to ‘username’@'%’ identified by ‘password’ with grant option;
例如:

CREATE USER 'testdb'@'localhost' IDENTIFIED BY '***';
GRANT ALL PRIVILEGES ON * . * TO 'testdb'@'localhost' IDENTIFIED BY '111111' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;

打包软件
http://www.jrsoftware.org/isinfo.php
granary.iss源代码
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

[Setup]
; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{648E30CF-E562-4D97-994A-D9F0D395F976}
AppName=粮情自动监测系统
AppVersion=1
;AppVerName=TestGranary 1
AppPublisher=北京佳华科技有限公司
AppPublisherURL=http://www.baidu.com
AppSupportURL=http://www.baidu.com
AppUpdatesURL=http://www.baidu.com
DefaultDirName={pf}\TestGranary
DefaultGroupName=TestGranary
SetupIconFile =software.ico
AllowNoIcons=yes
OutputBaseFilename=粮情监控系统安装文件
Compression=lzma
SolidCompression=yes

[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 0,6.1

[Files]
Source: "E:\testpackage_3\Setup.cmd"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\testpackage_3\7z.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\testpackage_3\7z.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\testpackage_3\Package_7z"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\testpackage_3\uninstall.cmd"; DestDir:"{app}"; Flags:ignoreversion


[Icons]
Name: "{group}\TestGranary"; Filename: "{app}\software.ico"


[Run]
Filename: "{app}\Setup.cmd"; Description: "{cm:LaunchProgram,TestGranary}"; Flags: nowait postinstall skipifsilent

[UninstallRun]
Filename: "{app}\unintall.cmd";


procedure CurStepChanged(CurStep: TSetupStep);
var
uninspath, uninsname, NewUninsName, MyAppName: string;
begin
if CurStep=ssDone then
begin

NewUninsName := '卸载粮情监测程序';
// 应用程序名称,与 [SEUTP] 段的 AppName 必须一致,请相应修改!
MyAppName := '粮情自动监测系统';
// 以下重命名卸载文件
uninspath:= ExtractFilePath(ExpandConstant('{uninstallexe}'));
uninsname:= Copy(ExtractFileName(ExpandConstant('{uninstallexe}')),1,8);
RenameFile(uninspath + uninsname + '.exe', uninspath + NewUninsName + '.exe');
RenameFile(uninspath + uninsname + '.dat', uninspath + NewUninsName + '.dat');
// 以下修改相应的注册表内容
if RegKeyExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + MyAppName + '_is1') then
begin
RegWriteStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + MyAppName + '_is1', 'UninstallString', '"' + uninspath + NewUninsName + '.exe"');
RegWriteStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + MyAppName + '_is1', 'QuietUninstallString', '"' + uninspath + NewUninsName + '.exe" /SILENT');
end;
end;
end;

Inno setup使用问题
http://hi.baidu.com/xbs72/blog/item/b9975e36f12e433d0b55a906.html


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics