Please help me,, i got stuck 24 hour not solve

Please help me,, i got stuck 24 hour not solve
whats wrong with my code

test in delphi 7 and delphi berlin

error is here but i never free it.
error capture too using eurekalog

finally
FIniFile.Free;
end;


source .pas & dfm :

unit unExport_TIRASND_SMART;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Grids, DBGrids, Mask, ComCtrls, IniFiles ;

type
TfrmExport_TIRASND_SMART = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
Panel3: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
lbldb: TEdit;
lbluser: TEdit;
lblpassw: TEdit;
lblport: TEdit;
lblserver: TEdit;
lbldll: TEdit;
lblseparate: TEdit;
Label12: TLabel;
lbldirektori: TEdit;
Label13: TLabel;
Label14: TLabel;
lblstok: TRadioGroup;
lblauth: TRadioGroup;
lblprovider: TComboBox;
procedure FormShow(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure SaveIt(Sender: TObject);
procedure LoadIt(Sender: TObject);

private
{ Private declarations }
FFilename : string;
FIniFile : TInifile;

public
{ Public declarations }
end;

var
frmExport_TIRASND_SMART: TfrmExport_TIRASND_SMART;

implementation

{$R *.dfm}

procedure TfrmExport_TIRASND_SMART.FormShow(Sender: TObject);
begin
//
FFilename := ChangeFileExt(ExtractFileName(ParamStr(0)), '.ini');
LoadIt(nil);
end;

procedure TfrmExport_TIRASND_SMART.FormCloseQuery(Sender: TObject;
var CanClose: Boolean);
begin
//SaveIt(nil);
end;

procedure TfrmExport_TIRASND_SMART.SaveIt(Sender: TObject);
begin
FIniFile := TIniFile.Create(IncludeTrailingPathDelimiter(ExtractFilePath(ParamStr(0))) + FFilename);
try
FIniFile.WriteString('general', lblserver.Name, lblserver.Text);
FIniFile.WriteString('general', lbluser.Name, lbluser.Text);
FIniFile.WriteString('general', lblpassw.Name, lblpassw.Text);
FIniFile.WriteString('general', lbldirektori.Name, lbldirektori.Text);
FIniFile.WriteString('general', lblseparate.Name, lblseparate.Text);
FIniFile.WriteString('general', lblport.Name, lblport.Text);
FIniFile.WriteString('general', lbldb.Name, lbldb.Text);
FIniFile.WriteString('general', lbldll.Name, lbldll.Text);
FIniFile.WriteString('general', lblstok.Name, IntToStr(lblStok.ItemIndex));
FIniFile.WriteString('general', lblauth.Name, IntToStr(lblauth.ItemIndex));
FIniFile.WriteString('general', lblprovider.Name, IntToStr(lblprovider.ItemIndex));

finally
FIniFile.Free;
end;
end;

procedure TfrmExport_TIRASND_SMART.LoadIt(Sender: TObject);
begin
//
FIniFile := TIniFile.Create(IncludeTrailingPathDelimiter(ExtractFilePath(ParamStr(0))) + FFilename);

try

if FIniFile.ReadString('general', lblauth.Name, '') <> '' then
begin
//ShowMessage(IntToStr(StrToInt(FIniFile.ReadString('general', lblauth.Name, ''))));

lblauth.ItemIndex := StrToInt(FIniFile.ReadString('general', lblauth.Name, ''));
end;

if FIniFile.ReadString('general', lblprovider.Name, '') <> '' then
begin

//ShowMessage(IntToStr(StrToInt(FIniFile.ReadString('general', lblprovider.Name, ''))));

lblprovider.ItemIndex := StrToInt(FIniFile.ReadString('general', lblprovider.Name, ''));
end;

if FIniFile.ReadString('general', lblserver.Name, '') <> '' then
begin
lblserver.Text := FIniFile.ReadString('general', lblserver.Name, '');
end;

if FIniFile.ReadString('general', lbluser.Name, '') <> '' then
begin
lbluser.Text := FIniFile.ReadString('general', lbluser.Name, '');
end;

if FIniFile.ReadString('general', lblpassw.Name, '') <> '' then
begin
lblpassw.Text := FIniFile.ReadString('general', lblpassw.Name, '');
end;

if FIniFile.ReadString('general', lbldirektori.Name, '') <> '' then
begin
lbldirektori.Text := FIniFile.ReadString('general', lbldirektori.Name, '');
end;

if FIniFile.ReadString('general', lblseparate.Name, '') <> '' then
begin
lblseparate.Text := FIniFile.ReadString('general', lblseparate.Name, '');
end;

if FIniFile.ReadString('general', lblport.Name, '') <> '' then
begin
lblport.Text := FIniFile.ReadString('general', lblport.Name, '');
end;

if FIniFile.ReadString('general', lbldb.Name, '') <> '' then
begin
lbldb.Text := FIniFile.ReadString('general', lbldb.Name, '');
end;

if FIniFile.ReadString('general', lbldll.Name, '') <> '' then
begin
lbldll.Text := FIniFile.ReadString('general', lbldll.Name, '');
end;

if FIniFile.ReadString('general', lblstok.Name, '') <> '' then
begin
lblstok.ItemIndex := StrToInt(FIniFile.ReadString('general', lblstok.Name, ''));
end;

finally
FIniFile.Free;
end;

end;


end.

====================================

object frmExport_TIRASND_SMART: TfrmExport_TIRASND_SMART
Left = 205
Top = 23
Caption = 'Export TIRASND SMART - RELEASE 14.04.2017'
ClientHeight = 557
ClientWidth = 912
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
OnCloseQuery = FormCloseQuery
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object Panel1: TPanel
Left = 0
Top = 0
Width = 912
Height = 41
Align = alTop
TabOrder = 0
object Label14: TLabel
Left = 19
Top = 12
Width = 206
Height = 13
Caption = 'TIRASND menggunakan database MSSQL'
end
end
object Panel2: TPanel
Left = 0
Top = 41
Width = 912
Height = 516
Align = alClient
TabOrder = 1
object PageControl1: TPageControl
Left = 1
Top = 1
Width = 910
Height = 514
ActivePage = TabSheet1
Align = alClient
TabOrder = 0
object TabSheet1: TTabSheet
Caption = 'Export'
object Panel3: TPanel
Left = 0
Top = 0
Width = 902
Height = 284
Align = alTop
TabOrder = 0
object Label1: TLabel
Left = 230
Top = 109
Width = 79
Height = 13
Alignment = taRightJustify
Caption = 'Database / Alias'
end
object Label2: TLabel
Left = 74
Top = 81
Width = 22
Height = 13
Alignment = taRightJustify
Caption = 'User'
end
object Label3: TLabel
Left = 50
Top = 110
Width = 46
Height = 13
Alignment = taRightJustify
Caption = 'Password'
end
object Label4: TLabel
Left = 289
Top = 81
Width = 19
Height = 13
Alignment = taRightJustify
Caption = 'Port'
end
object Label5: TLabel
Left = 67
Top = 52
Width = 31
Height = 13
Alignment = taRightJustify
Caption = 'Server'
end
object Label6: TLabel
Left = 471
Top = 83
Width = 23
Height = 13
Alignment = taRightJustify
Caption = '.DLL'
end
object Label12: TLabel
Left = 450
Top = 109
Width = 43
Height = 13
Alignment = taRightJustify
Caption = 'Separate'
end
object Label13: TLabel
Left = 298
Top = 214
Width = 39
Height = 13
Alignment = taRightJustify
Caption = 'Direktori'
end
object lbldb: TEdit
Left = 313
Top = 106
Width = 122
Height = 21
TabOrder = 0
Text = 'dbTIRASND'
end
object lbluser: TEdit
Left = 101
Top = 78
Width = 121
Height = 21
TabOrder = 1
Text = 'sa'
end
object lblpassw: TEdit
Left = 100
Top = 106
Width = 121
Height = 21
PasswordChar = '*'
TabOrder = 2
Text = 'sa'
end
object lblport: TEdit
Left = 312
Top = 78
Width = 121
Height = 21
TabOrder = 3
Text = '1433'
end
object lblserver: TEdit
Left = 101
Top = 49
Width = 223
Height = 21
TabOrder = 4
Text = 'localhost'
end
object lbldll: TEdit
Left = 498
Top = 80
Width = 304
Height = 21
Color = clInactiveCaption
Enabled = False
TabOrder = 5
end
object lblseparate: TEdit
Left = 499
Top = 107
Width = 121
Height = 21
TabOrder = 6
Text = '|'
end
object lbldirektori: TEdit
Left = 342
Top = 211
Width = 295
Height = 21
TabOrder = 7
Text = 'C:\SMART\ORDER'
end
object lblstok: TRadioGroup
Left = 679
Top = 136
Width = 195
Height = 99
Caption = ' Master Smart Distribution Sistem '
Items.Strings = (
'Pakai Stok'
'Tanpa Stok / Jasa')
TabOrder = 9
OnClick = SaveIt
end
object lblauth: TRadioGroup
Left = 353
Top = 18
Width = 287
Height = 49
Caption = 'Tipe Koneksi SQL Server'
Columns = 2
ItemIndex = 1
Items.Strings = (
'Windows Authenticate'
'User Password login')
TabOrder = 10
end
object lblprovider: TComboBox
Left = 652
Top = 33
Width = 145
Height = 21
Style = csDropDownList
ItemIndex = 4
TabOrder = 8
Text = 'prDirect'
Items.Strings = (
'prAuto'
'prSQL'
'prNativeClient'
'prCompact'
'prDirect')
end
end
end
end
end
end




Comments

  1. you can not write an ini-file to the program directory under win vista .. Win10

    ReplyDelete
  2. try to delete all of the codes just left Fini := TIniFiel.Create and FIni.Free; and see....

    ReplyDelete

Post a Comment