1what are the specific line of code i my supposed the modify?2. Assuming that my app file name is Setup, and Product name is Justsoft Interactive & company name of Justclickk Technology Ltd. and web
www.justclickk.com How do i go about making inno setup package my app.
We have a full InnoSetup example included in the TurboActivate.zip package (you can get it on your API page). Plus we have a tutorial explaining how to integrate TurboActivate in your Inno Setup installer.
If you look at the tutorial, the bold parts are what you need to add. It would almost be easier if you just started with out example Inno Setup script and then modified it with your company name, product name, and added your files. That way you only need to change a few lines of code.
It would probably be easiest if you just start with our pre-written Inno Setup script. First compile it, understand how it works, then start making small changes. For instance, change the product name, and company name then recompile and test it. Then add your files, recompile and test it. Etc, etc.
[Files]; Install TurboActivate to app so we can access it at uninstall time; Also, notice we're putting the TurboActivate files at the top of the file; list. This is so that if you're using "SolidCompression=yes" your installer; can still start relatively quickly.Source: "TurboActivate.dll"; DestDir: "app"Source: "TurboActivate.dat"; DestDir: "app"
Inno Setup is a popular programfor making software installations. Unfortunately, there is no official unpacker - theonly method of getting the files out of the self-extracting executableis to run it. One piece of software that addresses this issue is SergeiWanin's InstallExplorer,a plug-in for the FAR Manager that unpacksseveral types of installations, including Inno Setup (IS). But since it is not updated in atimely fashion, and so does not support the latest IS most of the time, this program was born.The advantages over InstallExplorer are:
Both the source and the executable packages are compressed withWinRar. While the full-featured packer is shareware,the UnRar utility that can only extract files is free. And there are lots of freethird-party programs that unpack rar just fine, e.g. 7-Zip.
Innounp is a console application, and it uses command-line options to find outwhat to do. For a more human-friendly interface utilizing FAR or Total Commander asa front-end see the MultiArc section below. Windows Explorer fans:nullz has made some .reg scripts to add innounp into the right-click menu and Richard Santaella crafted agraphical wrapper for innounp (get it on the download page).
By default all files are extracted to the current directory. Use -d tooverride this behaviour. For example, -dUnpacked will create a directory namedUnpacked inside the current directory and put the extracted files there.
The -c option is a little more tricky to explain. Suppose you opened an installationin a file manager and browsed to app\subdir\program.exe. Now if you copiedprogram.exe to another location, the entire directory tree (app\subdir\)would be created and program.exe would be extracted there. -c notifies innounpthat you are only interested in paths from the current directory and below, so that yourfile, program.exe, is extracted right where you intended to copy it, not severaldirectory levels deeper. Note that in order to avoid confusion, files must still bespecified by their full path names inside the installation.
Note that an installation can contain several identical files (possibly under different names). Inno Setupstores only one copy of such files, and by default innounp will also unpack one file. If you want to haveall files that could ever be installed anywhere, regardless of how many identical files this may get you,-a option will do it.
If -m is specified, the file listing includes embedded\CompiledCode.binwhich is the code made by the RemObjects Pascal Script compiler. It is possible to disassembleit using the ifps3_disasm.rar package on the download page. The result is not veryreadable though since it uses the basic 'disassembler' from IFPS3. Anyone wants to write adecompiler?
OK, I know innounp is far from being perfect, but it is my intention to makethe program usable. User feedback is a great way to achieve this. Here's what you shoulddo if you find a bug and want it fixed.
Tell me what's wrong with innounp. If you encountered incorrect behaviour,say what you think it should do and what it actually does. If it crashed or gavean error message, say what did that - innounp, Windows, FAR, etc, and includethe details.
Describe the exact steps necessary to reproduce the bug. Say what are thepreconditions. Is the bug specific to some system settings? To a setup file youhave? (include the problem part of the installation script or a link to the compiledsetup, if it is small enough) To an IS version? To something else? Or does thebug occur regardless of these things?
Unless you are a die-hard fan of command line, you may like the idea of workingwith IS installations like with conventional archives in a file manager. Right nowtwo programs support this: FAR and Total Commander. Below are the instructionshow to integrate innounp into each.
Copy innounp.exe to a directory in your PATH and edit yourFAR\Plugins\MultiArc\Formats\Custom.ini file. There are two alternatesettings differing in several aspects and each having its own pros and cons. Trythe recommended setting first, if it does not work well for you, try the othersetting or even combine them.
If you have InstallExplorer installed (or another plug-in that handles IS,but you will need to adjust the settings accordingly), you might want to let itprocess all the other types of installations but keep IS installations for innounp.FAR does not provide a means of customizing the plug-in call order; however, anempirical study has shown that it loads plug-ins and applies them to files inlexical order. So the solution is to rename InstallExplorer's dll file from 6InstExpl.dllto e.g. zInstExpl.dll (and restart FAR).
Configuration made up by Gnozal and Maxwish and posted onTC forum. Change the path belowto where you have innounp installed and add this to your MultiArc.ini. Note thatMultiArc is not included in the default TC installation, instead it is available as aseparate download from Siarzhuk Zharski's web site.Refer to the help file for information on any additional configuration necessary.
Copyright 2004-2020 QuickeneR, 2009-2020 Ariman
This program is licensed under the terms of the GNU General Public License (GPL). A copy of the license is included with the source files.
If you distribute innounp on the WWW, please put a link to its home page,
I'm building an installer using Inno Setup and the programming is done via Delphi/Pascal for the custom dialog screens. It's almost done, I'm just wondering how I can disable some text boxes or other components dependent on other actions like the click of a radio button.
Specific example: I have 2 radio buttons, one for locating a key file on the local machine, another for inputting it manually. If you click the radio button to find it on the local machine, it activates a button where you can browse and find it locally. If you click the second radio button, the browse button stays grayed out and disabled.
The correct way for this would be to make your dialog showed modally which would implicitly prevent other forms to be modified. And it would also prevent them to hide your form behind themselves. And also there is that cool pinging sound... :)
There was a lot of time I tought something had freezed, and found a hidden dialog behind its form.
In the procedure at the top, if I put checkbox.anything in there, it doesn't know what checkbox is. Or if I use Sender.enabled then it doesn't know what ENABLED means because it's not a function of TObject. So if I change it to (Sender: TCheckBox) then it says there is a type mismatch.....what do I do? Please, been on this problem for 3 days and Inno help is pretty non existent.
Thanks for the easy question.
First, the problem is that you've changed your method signature. In Delphi, it would require the caller to explicitly cast the sender parameter to TCheckBox to be able to use it. This won't be the case. Instead you must receive a TObject, and later typecast it yourself to TCheckBox: Ex 5.1 step 4 Testing the Sender parameter
In case there would be some crap with the runtime type information, just use the forced one: Ex 5.1 step 6 An alternative typecasting operator (Of course if somehow it's not a TCheckBox, this won't work either.)
Wow, thanks. Really close but I don't have it yet.
So in Step4 that you posted, there's a download on the final page for homework answers and there's an example on that PDF which contains a method:
The main thing I hate in delphi is global variables...
So 1st, the name is TComponent.Name. It's a field. You can find components by name calling the appropriate methods, and it helps serialization.
2nd there are global variables, they can be accessed from everywhere, like Form1 always holds the pointer to the single instance created by Delphi from your TForm1. It have nothing to do with the name. It's a global variable. Of course the default names and values are the same, but just coincidence, they are not the same thing. Using global variables is deprecated, but Delphi is old.
3rd, this is what you need: the sender! In correct OO programing, instead of global variables, pointers are passed around. Well, it's much better than global variables, because... so this is the only thing you need in a correct design. And this is the sender. You just have to forget the two before. So now, instead of chkLight1.Checked; you write (Sender as TCheckBox).Checked;
Alternatively with globals, you could write Form1.chkLight1.Checked; ... if you would have those globals, but this was the 1st problem I guess.
3a8082e126