inno setup mysql kurulumu ..

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
ovural
Üye
Mesajlar: 167
Kayıt: 22 Eki 2003 10:20
İletişim:

inno setup mysql kurulumu ..

Mesaj gönderen ovural »

arama yaptım ama yeterince ayrıntıl yok .. baska forumlardada aradım .. guzel bir dokuman yok ..

inno setup ile mysql kurulumunu yapabilirmiyiz ?

elinde hazır script olan var mı ?
mkysoft
Kıdemli Üye
Mesajlar: 3103
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Mesaj gönderen mkysoft »

arkadaşım ben inno setup değilde NSI kullnıyorum ama yapı aynı sanırım. ben mysql'i kurmak için kendime bir exe dosya hazırladım. bu exe hem ini dosyasını yapılandırıyor hemde mysqli kuruyor. tabi bu işi NSI ve inno setup içindende yapmak mümkün ama sonradan keşfettim uğraşmadım üzerinde. aşağıdakiler mysql 4.1.x den sonrası için geçerlidir. bu sürümden sonra my.ini dosyası mysql klasörü içinde olabiliyor windows içinde olması şart değil. eğer eski sürümler için kullanacaksan değiştir.
----- my.ini dosyasının adını my.org diye değiştirip şu şekilde kaydettim --
[client]
port=3306
[mysqld]
port=3306
basedir="#/#/mysql/"
datadir="#/#/mysql/Data/"
default-character-set=latin5
language=#/#/mysql/share/turkish
default-storage-engine=MYISAM
max_connections=100
query_cache_size=8M
table_cache=256
tmp_table_size=5M
thread_cache=8
myisam_max_sort_file_size=100G
myisam_max_extra_sort_file_size=100G
myisam_sort_buffer_size=8M
key_buffer_size=8M
read_buffer_size=64K
read_rnd_buffer_size=185K
sort_buffer_size=139K
skip-innodb
innodb_additional_mem_pool_size=2M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=1M
innodb_buffer_pool_size=8M
innodb_log_file_size=10M
innodb_thread_concurrency=8
---------- kur.exe programın bir consol aplication ------------
program kur;

{$APPTYPE CONSOLE}

uses
SysUtils, Windows;

Function WinExecute32Wait(FileName : AnsiString) : integer;
var
zAppName:array[0..512] of char;
zCurDir:array[0..255] of char;
WorkDir:String;
StartupInfo:TStartupInfo;
ProcessInfo:TProcessInformation;
res : DWord;
begin
StrPCopy(zAppName,FileName);
GetDir(0,WorkDir);
StrPCopy(zCurDir, ExtractFilePath(FileName));
FillChar(StartupInfo, Sizeof(StartupInfo),#0);
StartupInfo.cb := Sizeof(StartupInfo);
StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
StartupInfo.wShowWindow := SW_HIDE; // hide the application window
// StartupInfo.wShowWindow := SW_SHOW;
if not CreateProcess(nil,
zAppName, { pointer to command line string }
nil, { pointer to process security attributes}
nil, { pointer to thread security attributes }
false, { handle inheritance flag }
CREATE_NEW_CONSOLE or { creation flags }
NORMAL_PRIORITY_CLASS,
nil, { pointer to new environment block }
nil, { pointer to current directory name }
StartupInfo, { pointer to STARTUPINFO }
ProcessInfo) then Result := 0 { pointer to PROCESS_INF }
else begin
WaitforSingleObject(ProcessInfo.hProcess,INFINITE);
GetExitCodeProcess(ProcessInfo.hProcess, res);
result := res;
end;
end;

var
ogr,ini: TextFile;
klasor,klasorters,satir:string;
begin
{ TODO -oUser -cConsole Main : Insert code here }
klasor := GetCurrentDir;
klasorters := stringreplace(klasor,'\','/',[rfReplaceAll]);
Assignfile(ogr,klasor+'\mysql\my.org');
Assignfile(ini,klasor+'\mysql\my.ini');
Reset(ogr);
Rewrite(ini);
while eof(ogr)=false do
begin
readln(ogr,satir);
satir := trim(satir);
satir := stringreplace(satir,'#/#',klasorters,[rfReplaceAll]);
writeln(ini,satir);
end;
close(ogr);
close(ini);
if ParamStr(1) = 'kur' then
begin
// 0 hata vermedi demek
WinExecute32Wait(klasor+'\mysql\bin\mysqld-nt --install MySQL --defaults-file="'+klasor+'\mysql\my.ini"');
WinExecute32Wait('net start MySQL');
end;
if ParamStr(1) = 'sil' then
begin
WinExecute32Wait('net stop MySQL');
WinExecute32Wait(klasor+'\mysql\bin\mysqld-nt --remove');
end;

end.
bilbeyi
Üye
Mesajlar: 104
Kayıt: 24 Kas 2004 10:48
Konum: ist

soru yineleme

Mesaj gönderen bilbeyi »

iyi günler
Aynı sorunu bende yaşıyorum. Farklı bir alan açmak istemedim.
Arkadaşımız cevap vermiş ancak inno içinden halletmek istiyorum.
inno ile hazırlanmış mysql kurulumuda yapan bir örnek yada döküman varsa yardımcı olabilirmisiniz ?
mkysoft
Kıdemli Üye
Mesajlar: 3103
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Mesaj gönderen mkysoft »

bu kurulum sadece XP ve 2000 için geçerlidir. NT ile de çalışabilir.
aynı exe'yi innonadada kullanabilirsin. mysql'i programın yükleneceği klasör içinde mysql adında bir klasöre kuruyor. setup programında mysql dizinibdeki tüm dosyaları programınızın içindeki mysql klasörüne kopyalacak şekilde ayarlayın. bu klasöre my.org dosyasınıda atmayı unutmayın. dosya kopyalama işlemi bittikten sonra kur.exe'yi çağıran fonksiyonu kullanın.
abluka
Üye
Mesajlar: 16
Kayıt: 26 Oca 2005 10:41

Mesaj gönderen abluka »

hoca kusura bakma exe yi çalıştıran fonksiyon nedir zahmet olmazsa yazabilirmisin buraya ?

[Run]
Filename: "{app}\MyProg.exe"; Description: "{cm:LaunchProgram,prg Tool}"; Flags: nowait postinstall skipifsilent

bu değil inşallah cunku bu soruyor sormasa daha iyi olur
mkysoft
Kıdemli Üye
Mesajlar: 3103
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Mesaj gönderen mkysoft »

ben inno kullanmadım. NIS'de

Kod: Tümünü seç

winexec('kur.exe')
şeklindeydi. Kendi sitesinde vardır innonun.
Cevapla