INSTALAR PORTGRESQL COM INNO SETUP
Boa tarde !
Tenho um script para instalar PostgreSql com inno setup.
Até o momento o script está conseguindo: Instalar o software , Instalar o Postgresql , definir a senha do banco de dados.
Mas não consigo fazer o restore da base de dados. Desta forma quando o software inicia (Load) não conecta com a tabela necessaria ,já que está não existe.
Script do Inno :
Abaixo meu arquivo .Bat que cria o banco de dados .. Obs: No windows 7 Esse arquivo consegue criar o banco de dados, Mas no windows 8 estou tendo problemas.
O erro que recebo é o da imagem em anexo
Já tentei alterar para : psql.exe -U postgres -c [Ô]create database Teste[Ô]
start psql.exe -U postgres -c [Ô]create database Teste[Ô]
Consigo instalar meu software e o banco de dados , mas acredido que tem algum erro relacionado aos diretórios por ser windows 64bits
Alguem poderá resolver isto? conto com toda ajuda ,obrigado!
Tenho um script para instalar PostgreSql com inno setup.
Até o momento o script está conseguindo: Instalar o software , Instalar o Postgresql , definir a senha do banco de dados.
Mas não consigo fazer o restore da base de dados. Desta forma quando o software inicia (Load) não conecta com a tabela necessaria ,já que está não existe.
Script do Inno :
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
.[code]
// check for framework
Function CheckForFramework : boolean;
Var
regresult : cardinal;
Begin
RegQueryDWordValue(HKLM, [ô]Software\Microsoft\.NETFramework\policy\v4.5[ô], [ô]Install[ô], regresult);
If regresult = 0 Then
Begin
Result := true;
End
Else
Result := false;
End;
[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={{CF8D6FF8-5E59-42F5-ABE0-C774EFC7773E}
AppName=Teste
AppVersion=1.0
;AppVerName= Teste
AppPublisher=nome da empresa
AppPublisherURL=http://www.
AppSupportURL=http://www.
AppUpdatesURL=http://www.
DefaultDirName={pf32}\Software\Teste
DisableDirPage=yes
DefaultGroupName=Teste
DisableProgramGroupPage=yes
LicenseFile=E:\Software\Teste\Licença.txt
OutputDir=E:\
OutputBaseFilename=Teste Setup
Compression=lzma
SolidCompression=yes
WindowVisible =false
WizardImageFile=E:\Software\Teste\cc.bmp
[Languages]
Name: [Ô]brazilianportuguese[Ô]; MessagesFile: [Ô]compiler:Languages\BrazilianPortuguese.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:\Software\Teste\dotNetFx45_Full_setup.exe; DestDir: {tmp}; Flags: deleteafterinstall; Check: CheckForFramework
Source: [Ô]E:\Software\Teste\Teste.exe[Ô]; DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\ClData.dll[Ô]; DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\DComPostg.dll[Ô]; DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\Teste.exe.config[Ô]; DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\Teste.vshost.exe[Ô]; DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\Teste.vshost.exe.config[Ô]; DestDir: [Ô]{pf32}Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\Teste.vshost.exe.manifest[Ô]; DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\Licença.txt[Ô]; DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\Mono.Security.dll[Ô]; DestDir: [Ô]{pf32}Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\Npgsql.dll[Ô];DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\PushDtLink.dll[Ô]; DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\Validate.dll[Ô];DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\cc.bmp[Ô]; DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\postgresql-9.4.0-1-windows.exe[Ô]; DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\createdatabase.bat[Ô]; DestDir: [Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
Source: [Ô]E:\Software\Teste\Teste.backup[Ô]; DestDir:[Ô]{pf32}\Software\Teste[Ô]; Flags: ignoreversion
[Icons]
Name: [Ô]{group}\Teste[Ô]; Filename: [Ô]{app}\Teste.exe[Ô]
Name: [Ô]{group}\{cm:ProgramOnTheWeb,Teste}[Ô]; Filename: [Ô]http://www.[Ô]
Name: [Ô]{commondesktop}\Teste[Ô]; Filename: [Ô]{app}\Teste.exe[Ô]; Tasks: desktopicon
Name: [Ô]{userappdata}\Microsoft\Internet Explorer\Quick Launch\Teste[Ô]; Filename: [Ô]{app}\Teste.exe[Ô]; Tasks: quicklaunchicon
[Run]
Filename: {tmp}\dotNetFx45_Full_setup; Parameters: [Ô]/q:a /c:[Ô][Ô]\Program Files (x86)\Software\Teste[Ô][Ô]install /l /q[Ô][Ô][Ô]; Check: CheckForFramework; StatusMsg: Microsoft Framework 4.5 está começando a ser instalado. Por favor aguarde...
Filename: [Ô]{app}\Teste.exe[Ô]; Description: [Ô]{cm:LaunchProgram,Teste}[Ô]; Flags: nowait postinstall skipifsilent
Filename: [Ô]C:\Program Files (x86)\Software\Teste\postgresql-9.4.0-1-windows.exe[Ô]; Parameters: --serverport 5432 --locale C --superaccount postgres --superpassword 123456 --unattendedmodeui minimal --debuglevel 2 --mode unattended; StatusMsg: Aguarde até que a instalação chegue ao fim....
Filename: [Ô][Ô]C:\Program Files (x86)\Software\Teste\createdatabase.bat[Ô]; Parameters: [Ô][Ô][Ô]{pf32}[Ô][Ô] [Ô][Ô]{pf32}[Ô][Ô][Ô]; StatusMsg: Atualizando o banco de dados; Languages:
[UninstallDelete]
;DESINSTALAÇÃO
;deletar ao desinstalar - arquivos e/ou diretórios
Name: {app}; Type: filesandordirs
Abaixo meu arquivo .Bat que cria o banco de dados .. Obs: No windows 7 Esse arquivo consegue criar o banco de dados, Mas no windows 8 estou tendo problemas.
@Echo off
set PGUSER=postgres
set PGPASSWORD=123456
set caminho=%~f1
set caminho_backup=%~f2
c:
cd \
cd C:\Program Files (x86)\PostgreSQL\9.4\bin
@echo [Ô]Aguarde enquanto o banco de dados é atualizado...[Ô]
psql -U postgres -c [Ô]create database Teste[Ô]
pg_restore.exe -i -h localhost -p 5432 -U postgres -d Teste -f [Ô]C:\Program Files (x86)\Software\Teste.backup[Ô]
pause
O erro que recebo é o da imagem em anexo
Já tentei alterar para : psql.exe -U postgres -c [Ô]create database Teste[Ô]
start psql.exe -U postgres -c [Ô]create database Teste[Ô]
Consigo instalar meu software e o banco de dados , mas acredido que tem algum erro relacionado aos diretórios por ser windows 64bits
Alguem poderá resolver isto? conto com toda ajuda ,obrigado!
to apanhando e muito pra instalar o crruntime, da erro e diz nao ser aplicativo valido 32bits, e ja conferi varias vezes, to colocando o x86, tem complementos q precisamos q dao uma dor de cabeca, veja esses 2 links podem ajudar
https://gist.github.com/levymoreira/2370405
http://www.guj.com.br/java/276527-resolvido-inno-setup-e-postgres-91
https://gist.github.com/levymoreira/2370405
http://www.guj.com.br/java/276527-resolvido-inno-setup-e-postgres-91
Resolvido ..ficou assim:
@Echo off
c:
cd \
cd C:\Program Files\PostgreSQL\9.4\bin
@echo [Ô]Aguarde enquanto o banco de dados é atualizado...[Ô]
set PGPASSWORD=123456
psql.exe -U postgres -c [Ô]create database Teste[Ô]
pg_restore.exe -h localhost -U postgres -d Teste [Ô]C:\Program Files (x86)\Software\Teste.backup[Ô]
endlocal
o problema era que -f é arquivo de saÃda e não de entrada (Restore)
Removendo o Pause , o setup encerra sozinho já executando o software com os dados do restore ....
@Echo off
c:
cd \
cd C:\Program Files\PostgreSQL\9.4\bin
@echo [Ô]Aguarde enquanto o banco de dados é atualizado...[Ô]
set PGPASSWORD=123456
psql.exe -U postgres -c [Ô]create database Teste[Ô]
pg_restore.exe -h localhost -U postgres -d Teste [Ô]C:\Program Files (x86)\Software\Teste.backup[Ô]
endlocal
o problema era que -f é arquivo de saÃda e não de entrada (Restore)
Removendo o Pause , o setup encerra sozinho já executando o software com os dados do restore ....
Tópico encerrado , respostas não são mais permitidas