Go Back   FileForums > Game Backup > PC Games > PC Games - CD/DVD Conversions > Conversion Tutorials

Reply
 
Thread Tools Display Modes
  #571  
Old 04-10-2023, 01:33
audiofeel's Avatar
audiofeel audiofeel is offline
Registered User
 
Join Date: Jan 2013
Location: Russia
Posts: 357
Thanks: 435
Thanked 818 Times in 299 Posts
audiofeel is on a distinguished road
Quote:
Originally Posted by audiofeel View Post
@BLACKFIRE
Everything is fine!! everything compiles without problems, but the installer itself freezes at startup, after one time. I've messed up something again
if you turn off part of the code as in the screenshot (wGetLogicalDriveList(ADrvLst, CDrvIdx)) then everything is fine
Preliminarily... failure at startup occurs only if the script is built on version 5.6.1. On version 6.2.2, I have not noticed any failures yet. I could be wrong . It is possible that something is wrong with my pc machine. Or I have a mistake in the script.
youtu.be

Last edited by audiofeel; 04-10-2023 at 01:57.
Reply With Quote
The Following User Says Thank You to audiofeel For This Useful Post:
hitman797 (04-10-2023)
Sponsored Links
  #572  
Old 04-10-2023, 04:54
hitman797's Avatar
hitman797 hitman797 is offline
Registered User
 
Join Date: Feb 2013
Location: Algeria
Posts: 167
Thanks: 443
Thanked 180 Times in 117 Posts
hitman797 is on a distinguished road
Code:
var
  Form4: TForm4;
  Directory: TDirectoryListBox;
  Drive: TDriveComboBox;
  FileList: TFileListBox;
Code:
procedure TForm4.FormCreate(Sender: TObject);
begin
  // Directory
  Directory:= TDirectoryListBox.Create(nil);
  Directory.ParentWindow:=FmxHandleToHWND(Form4.Handle);
  Directory.Visible:=False;
  Directory.FileList:=FileList;
  // Drive
  Drive:= TDriveComboBox.Create(nil);
  Drive.ParentWindow:=FmxHandleToHWND(Form4.Handle);
  Drive.Visible:=False;
  Drive.TextCase:=tcUpperCase;
  Drive.DirList:=Directory;
  // FileList
  FileList:= TFileListBox.Create(nil);
  FileList.ParentWindow:=FmxHandleToHWND(Form4.Handle);
  FileList.Visible:=False;
  //
  ListBox1.Items:= Directory.Items;
  ListBox2.Items:= FileList.Items;
  ComboBox1.Items:= Drive.Items;
end;
Code:
procedure TForm4.ComboBox1Change(Sender: TObject);
begin
  Drive.ItemIndex:= ComboBox1.ItemIndex;
end;

procedure TForm4.ListBox1ItemClick(const Sender: TCustomListBox;
  const Item: TListBoxItem);
begin
  ListBox1.BeginUpdate;
  ListBox1.Items:= Directory.Items;
  ListBox1.EndUpdate;
end;

procedure TForm4.ListBox2ItemClick(const Sender: TCustomListBox;
  const Item: TListBoxItem);
begin
  ListBox2.BeginUpdate;
  ListBox2.Items:= FileList.Items;
  ListBox2.EndUpdate;
end;
Attached Images
File Type: png Capture.PNG (17.0 KB, 111 views)

Last edited by hitman797; 07-10-2023 at 05:49.
Reply With Quote
The Following 2 Users Say Thank You to hitman797 For This Useful Post:
audiofeel (04-10-2023), Lord.Freddy (04-10-2023)
  #573  
Old 04-10-2023, 10:44
audiofeel's Avatar
audiofeel audiofeel is offline
Registered User
 
Join Date: Jan 2013
Location: Russia
Posts: 357
Thanks: 435
Thanked 818 Times in 299 Posts
audiofeel is on a distinguished road
Quote:
Originally Posted by hitman797 View Post
Code:
var
  Form4: TForm4;
  Directory: TDirectoryListBox;
  Drive: TDriveComboBox;
  FileList: TFileListBox;
Code:
procedure TForm4.FormCreate(Sender: TObject);
begin
  // Directory
  Directory:= TDirectoryListBox.Create(nil);
  Directory.ParentWindow:=FmxHandleToHWND(Form4.Handle);
  Directory.Visible:=False;
  Directory.FileList:=FileList;
  // Drive
  Drive:= TDriveComboBox.Create(nil);
  Drive.ParentWindow:=FmxHandleToHWND(Form4.Handle);
  Drive.Visible:=False;
  Drive.TextCase:=tcUpperCase;
  Drive.DirList:=Directory;
  // FileList
  FileList:= TFileListBox.Create(nil);
  FileList.ParentWindow:=FmxHandleToHWND(Form4.Handle);
  FileList.Visible:=False;
  //
  ListBox1.Items:= Directory.Items;
  ListBox2.Items:= FileList.Items;
  ComboBox1.Items:= Drive.Items;
end;
Code:
procedure TForm4.ComboBox1Change(Sender: TObject);
begin
  Drive.ItemIndex:= ComboBox1.ItemIndex;
end;

procedure TForm4.ListBox1ItemClick(const Sender: TCustomListBox;
  const Item: TListBoxItem);
begin
  ListBox1.BeginUpdate;
  ListBox1.Items:= Directory.Items;
  ListBox1.EndUpdate;
end;

procedure TForm4.ListBox2ItemClick(const Sender: TCustomListBox;
  const Item: TListBoxItem);
begin
  ListBox2.BeginUpdate;
  ListBox2.Items:= FileList.Items;
  ListBox2.EndUpdate;
end;
It would be nice if blackfire69 added these objects and the ability to create custom directory selection pages without FolderTreeView...
Reply With Quote
The Following 2 Users Say Thank You to audiofeel For This Useful Post:
Behnam2018 (04-10-2023), hitman797 (04-10-2023)
  #574  
Old 05-10-2023, 02:04
hitman797's Avatar
hitman797 hitman797 is offline
Registered User
 
Join Date: Feb 2013
Location: Algeria
Posts: 167
Thanks: 443
Thanked 180 Times in 117 Posts
hitman797 is on a distinguished road
Talking

Code:
  hDrive: TDriveComboBox;
  hFilter: TFilterComboBox;
  hDirectory: TDirectoryListBox;
  hFileList: TFileListBox;
Attached Images
File Type: png Capture2.PNG (28.7 KB, 88 views)

Last edited by hitman797; 14-10-2023 at 08:16.
Reply With Quote
The Following User Says Thank You to hitman797 For This Useful Post:
audiofeel (05-10-2023)
  #575  
Old 06-10-2023, 01:07
Masquerade's Avatar
Masquerade Masquerade is offline
Registered User
 
Join Date: Jan 2020
Location: Monte d'Or
Posts: 1,159
Thanks: 284
Thanked 1,350 Times in 612 Posts
Masquerade is on a distinguished road
Please may I have some guidance transitioning my Installer from IsArcEx to using the module included in FMXInno? IsArcEx.dll is getting a lot of hits on VT and people downloading my releases are accusing me of putting trojans in the release.
Reply With Quote
The Following User Says Thank You to Masquerade For This Useful Post:
hitman797 (06-10-2023)
  #576  
Old 06-10-2023, 01:34
hitman797's Avatar
hitman797 hitman797 is offline
Registered User
 
Join Date: Feb 2013
Location: Algeria
Posts: 167
Thanks: 443
Thanked 180 Times in 117 Posts
hitman797 is on a distinguished road
Quote:
Originally Posted by Masquerade View Post
Please may I have some guidance transitioning my Installer from IsArcEx to using the module included in FMXInno? IsArcEx.dll is getting a lot of hits on VT and people downloading my releases are accusing me of putting trojans in the release.
Code:
[Files]
Source: "Files\FMXInno.dll"; Flags: dontcopy;
Code:
type
TCallback = function(OverallPct, CurrentPct, DiskTotalMB, DiskExtractedMB: Integer; DiskName, CurrentFile, RemainsTime, ElapsedTime, CurSpeed, AvgSpeed: WideString): LongWord;

TCallbackEx = function(OverallPct, CurrentPct, DiskTotalMB, DiskExtractedMB, TotalFiles, CurFiles: Integer; DiskName, CurrentFile, RemainsTime, ElapsedTime, CurSpeed, AvgSpeed: WideString): LongWord;
Code:
var
  ISArcExDiskCount      : Integer;
  ISArcExCancel         : Integer;
  ISArcExError          : Boolean;
  ISArcDiskAddingSuccess: Boolean;
Code:
function ISArcExInit(WinHandle: Longint; TimeFormat: Integer; Callback: TCallback): Boolean;
  external 'ISArcExInit@files:FMXInno.dll stdcall delayload';
function ISArcExInitEx(WinHandle: Longint; TimeFormat: Integer; Callback: TCallbackEx): Boolean;
  external 'ISArcExInitEx@files:FMXInno.dll stdcall delayload';
function ISArcExAddDisks(Inputfile, Password, OutputPath: Widestring): Boolean;
  external 'ISArcExAddDisks@files:FMXInno.dll stdcall delayload';
function ISArcExExtract(DiskNumber: Integer; CfgFile, WorkPath: Widestring): Boolean;
  external 'ISArcExExtract@files:FMXInno.dll stdcall delayload';
procedure ISArcExCallbackInterval(MSec: Cardinal);
  external 'ISArcExCallbackInterval@files:FMXInno.dll stdcall delayload';
function ISArcExGetCallbackInterval: Cardinal;
  external 'ISArcExGetCallbackInterval@files:FMXInno.dll stdcall delayload';
procedure ISArcExReduceCalcAccuracy(Factor: Byte);  // Factor: 1-5
  external 'ISArcExReduceCalcAccuracy@files:FMXInno.dll stdcall delayload';
function SuspendProc: Boolean;
  external 'SuspendProc@files:FMXInno.dll stdcall delayload';
function ResumeProc: Boolean;
  external 'ResumeProc@files:FMXInno.dll stdcall delayload';
procedure ISArcExStop;
  external 'ISArcExStop@files:FMXInno.dll stdcall delayload';
procedure ISArcExCleanUp;
  external 'ISArcExCleanUp@files:FMXInno.dll stdcall delayload';
function ChangeLanguage(Language: Widestring): boolean;
  external 'ChangeLanguage@files:FMXInno.dll stdcall delayload';
function Exec2(filename, Param: WideString; Show: Boolean): Boolean;
  external 'Exec2@files:FMXInno.dll stdcall delayload';

Last edited by hitman797; 06-10-2023 at 02:26.
Reply With Quote
The Following User Says Thank You to hitman797 For This Useful Post:
Masquerade (06-10-2023)
  #577  
Old 06-10-2023, 01:46
Masquerade's Avatar
Masquerade Masquerade is offline
Registered User
 
Join Date: Jan 2020
Location: Monte d'Or
Posts: 1,159
Thanks: 284
Thanked 1,350 Times in 612 Posts
Masquerade is on a distinguished road
And am I alright, with this code, to just drag and drop the FMX files into the project? I haven't upgraded the DLL in while.
Reply With Quote
  #578  
Old 06-10-2023, 01:58
audiofeel's Avatar
audiofeel audiofeel is offline
Registered User
 
Join Date: Jan 2013
Location: Russia
Posts: 357
Thanks: 435
Thanked 818 Times in 299 Posts
audiofeel is on a distinguished road
Quote:
Originally Posted by Masquerade View Post
And am I alright, with this code, to just drag and drop the FMX files into the project? I haven't upgraded the DLL in while.
Greetings! So you don't know the latest updates? now the unpacking module IsArcEx.dll located inside FMXInno.dll (you can only use it). I have also heard that on FMXInno.dll antivirus does not swear, but on IsArcEx.dll swears.
I was also written with this problem
Reply With Quote
The Following User Says Thank You to audiofeel For This Useful Post:
Masquerade (06-10-2023)
  #579  
Old 06-10-2023, 02:37
Masquerade's Avatar
Masquerade Masquerade is offline
Registered User
 
Join Date: Jan 2020
Location: Monte d'Or
Posts: 1,159
Thanks: 284
Thanked 1,350 Times in 612 Posts
Masquerade is on a distinguished road
I'm getting so far, but I think I've hit a roadblock. When compiling, the following line of code hits an error with invalid number of parameters. I have determined this to be "PreviousFileCount: Integer;" but please may somebody explain what this means? I will try to fix that.

Code:
VerifyHashesFromFile(ExpandConstant('{app}\_Verify\kaos.blake3'), ExpandConstant('{app}\_Verify'), 11, False, @VerifyHashMultiCallback);
Code:
function VerifyHashesFromFile(ChecksumFile, BasePath: WideString; HashAlgo, PreviousFileCount: Integer; LogFile: Boolean; Callback: TMultiHashCallback): Integer;
There is also an error compiling the function

MinimizeWindowCustomAnimated(FMXForm.HandleHWND, 50, 50, 40, 15);

As the new function only takes 2 parameters.

Last edited by Masquerade; 06-10-2023 at 03:02.
Reply With Quote
The Following User Says Thank You to Masquerade For This Useful Post:
Cesar82 (06-10-2023)
  #580  
Old 06-10-2023, 03:41
hitman797's Avatar
hitman797 hitman797 is offline
Registered User
 
Join Date: Feb 2013
Location: Algeria
Posts: 167
Thanks: 443
Thanked 180 Times in 117 Posts
hitman797 is on a distinguished road
Quote:
Originally Posted by Masquerade View Post
I'm getting so far, but I think I've hit a roadblock. When compiling, the following line of code hits an error with invalid number of parameters. I have determined this to be "PreviousFileCount: Integer;" but please may somebody explain what this means? I will try to fix that.

Code:
VerifyHashesFromFile(ExpandConstant('{app}\_Verify\kaos.blake3'), ExpandConstant('{app}\_Verify'), 11, False, @VerifyHashMultiCallback);
Code:
function VerifyHashesFromFile(ChecksumFile, BasePath: WideString; HashAlgo, PreviousFileCount: Integer; LogFile: Boolean; Callback: TMultiHashCallback): Integer;
Code:
VerifyHashesFromFile(ExpandConstant('{app}\_Verify\kaos.blake3'), ExpandConstant('{app}\_Verify'), 11,  0,False, @VerifyHashMultiCallback);
Code:
function VerifyHashesFromFile(ChecksumFile, BasePath: WideString; HashAlgo, PreviousFileCount: Integer; LogFile: Boolean; Callback: TMultiHashCallback): Integer;
Quote:
Originally Posted by Masquerade View Post
There is also an error compiling the function

MinimizeWindowCustomAnimated(FMXForm.HandleHWND, 50, 50, 40, 15);

As the new function only takes 2 parameters.
Code:
type
TMinimizeAnimPos    = (mapTop, mapBottom, mapLeft, mapRight);

function MinimizeWindowCustomAnimated(MinimizeAnimPos: TMinimizeAnimPos): Boolean;
  external 'MinimizeWindowCustomAnimated@files:FMXInno.dll stdcall delayload';
procedure pMinimizeWindow(const WinHandle: Cardinal);
  external 'pMinimizeWindow@files:FMXInno.dll stdcall delayload';
Code:
MinimizeWindowCustomAnimated(mapTop);
MinimizeWindow(WizardForm.Handle);

Last edited by hitman797; 06-10-2023 at 06:09.
Reply With Quote
The Following User Says Thank You to hitman797 For This Useful Post:
audiofeel (06-10-2023)
  #581  
Old 06-10-2023, 03:45
Cesar82's Avatar
Cesar82 Cesar82 is offline
Registered User
 
Join Date: May 2011
Location: Brazil
Posts: 1,016
Thanks: 1,721
Thanked 2,178 Times in 741 Posts
Cesar82 is on a distinguished road
Quote:
Originally Posted by Masquerade View Post
I'm getting so far, but I think I've hit a roadblock. When compiling, the following line of code hits an error with invalid number of parameters. I have determined this to be "PreviousFileCount: Integer;" but please may somebody explain what this means? I will try to fix that.

Code:
VerifyHashesFromFile(ExpandConstant('{app}\_Verify\kaos.blake3'), ExpandConstant('{app}\_Verify'), 11, False, @VerifyHashMultiCallback);
Code:
function VerifyHashesFromFile(ChecksumFile, BasePath: WideString; HashAlgo, PreviousFileCount: Integer; LogFile: Boolean; Callback: TMultiHashCallback): Integer;
There is also an error compiling the function

MinimizeWindowCustomAnimated(FMXForm.HandleHWND, 50, 50, 40, 15);

As the new function only takes 2 parameters.
PreviousFileCount is the initial value that must be added to the count of items displayed in calback if you call the function more than once.
Using this parameter, the total number of files will be displayed correctly when entering the value from the previous call.
Code:
VerifyHashesFromFile(ExpandConstant('{app}\_Verify\kaos.blake3'), ExpandConstant('{app}\_Verify'), 11, 0, False, @VerifyHashMultiCallback);
Reply With Quote
The Following 3 Users Say Thank You to Cesar82 For This Useful Post:
audiofeel (06-10-2023), hitman797 (06-10-2023), Masquerade (06-10-2023)
  #582  
Old 06-10-2023, 03:58
audiofeel's Avatar
audiofeel audiofeel is offline
Registered User
 
Join Date: Jan 2013
Location: Russia
Posts: 357
Thanks: 435
Thanked 818 Times in 299 Posts
audiofeel is on a distinguished road
Quote:
Originally Posted by Masquerade View Post
There is also an error compiling the function
MinimizeWindowCustomAnimated(FMXForm.HandleHWND, 50, 50, 40, 15);
As the new function only takes 2 parameters.
This parameter has been adjusted due to performance. now replaced by this
Code:
MinimizeWindowCustomAnimated(mapTop);
you can change the values by four
Code:
mapTop, mapBottom, mapLeft, mapRight
as an example
Code:
TObject(TitleLabel[3].GetObject): begin
   MinimizeWindowCustomAnimated(mapTop);
   pMinimizeWindow(WizardForm.Handle);
end;
or just like that
Code:
TObject(TitleLabel[3].GetObject): begin
   pMinimizeWindow(WizardForm.Handle);
end;
Reply With Quote
The Following User Says Thank You to audiofeel For This Useful Post:
hitman797 (06-10-2023)
  #583  
Old 06-10-2023, 06:37
Masquerade's Avatar
Masquerade Masquerade is offline
Registered User
 
Join Date: Jan 2020
Location: Monte d'Or
Posts: 1,159
Thanks: 284
Thanked 1,350 Times in 612 Posts
Masquerade is on a distinguished road
Sorry to keep asking, but now I've got a Type Mismatch for the following lines:

<button>.OnMouseDown(@CommonButtonDown);
<button>.OnMouseUp(@CommonButtonUp);

It seems that OnMouseDown/OnMouseUp are both TMouseEventF whereas CommonButtonDown/Up is a procedure. Is this the cause of the error?

Apologies for asking so much!
Reply With Quote
  #584  
Old 06-10-2023, 07:06
hitman797's Avatar
hitman797 hitman797 is offline
Registered User
 
Join Date: Feb 2013
Location: Algeria
Posts: 167
Thanks: 443
Thanked 180 Times in 117 Posts
hitman797 is on a distinguished road
Talking

Quote:
Originally Posted by Masquerade View Post
Sorry to keep asking, but now I've got a Type Mismatch for the following lines:

<button>.OnMouseDown(@CommonButtonDown);
<button>.OnMouseUp(@CommonButtonUp);

It seems that OnMouseDown/OnMouseUp are both TMouseEventF whereas CommonButtonDown/Up is a procedure. Is this the cause of the error?

Apologies for asking so much!
copy the procedure.
Code:
procedure OnMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);
begin
//
end;

procedure OnMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);
begin
//
end;
Code:
TMouseEventF        = procedure(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);
TMouseMoveEventF    = procedure(Sender: TObject; Shift: TShiftState; X, Y: Single);
TKeyEventF          = procedure(Sender: TObject; var Key: Word; var KeyChar: WideChar; Shift: TShiftState);

Last edited by hitman797; 06-10-2023 at 07:09.
Reply With Quote
The Following User Says Thank You to hitman797 For This Useful Post:
audiofeel (06-10-2023)
  #585  
Old 06-10-2023, 07:22
hitman797's Avatar
hitman797 hitman797 is offline
Registered User
 
Join Date: Feb 2013
Location: Algeria
Posts: 167
Thanks: 443
Thanked 180 Times in 117 Posts
hitman797 is on a distinguished road
Wink

hi, @BLACKFIRE69 can you add this class to the FMXInno.
this class is VCL component in unite VCL.FileCtrl.
I use unite FMX.Platform.Win to Handle the VCL component in FMX Form.
I made example in delphi.
THANK YOU.
Win 3.1:
Code:
  hDrive: TDriveComboBox;
  hFilter: TFilterComboBox;
  hDirectory: TDirectoryListBox;
  hFileList: TFileListBox;
ListBox:
Code:
procedure ListBoxItemClick(const Sender: TCustomListBox;
  const Item: TListBoxItem);
begin
end;
Label:
Code:
  GetText
Attached Images
File Type: png Capture.PNG (206.5 KB, 71 views)
Attached Files
File Type: 7z Project4.7z (11.78 MB, 13 views)

Last edited by hitman797; 06-10-2023 at 22:46.
Reply With Quote
The Following User Says Thank You to hitman797 For This Useful Post:
audiofeel (06-10-2023)
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Windows Fluent Effects Standalone API - InnoSetup / VCL / FXM BLACKFIRE69 Conversion Tutorials 0 15-11-2023 17:35
Windows Phone Installer similar to razor12911's original design? Kitsune1982 Conversion Tutorials 0 02-07-2020 13:04
INDEX - Conversion Tutorial Index Razor12911 Conversion Tutorials 5 11-06-2020 02:05
Frequently Asked Questions Joe Forster/STA PC Games - Frequently Asked Questions 0 29-11-2005 09:48



All times are GMT -7. The time now is 15:33.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Copyright 2000-2020, FileForums @ https://fileforums.com