Frequently asked Questions

Why key guid and termination timer, is it free or not?

Yes it is free. And it will stay free. The key guid calculator for all products is free free for download on this website.

The complete source code for all products is free for download too.

The software has been commercial before. The termination timers are still part of the software because they are a good example how to protected delphi components.

What is the difference between GM-Software license and GPL?

  1. The GPL does not allow getting commercial with the binaries. GM-Software license does.
  2. The GPL forces vendors to distribute the source code along with the binaries. GM-Software license does not.

Is it possible to avoid the termination timer by making changes to the source code?

Yes. It is already prepared. If you use the source code units in your project simply define the symbol NOGMTIMER in your project options and no termination timer will be compiled in. Alternatively uncomment {$DEFINE NOGMTIMER} in unit GMProdReg.pas:

{TODO: Uncomment this line to disable the termination timer}
// {$DEFINE NOGMTIMER}

This will turn off termination timers permanently.

How to prevent the components from starting the termination timer in the binary versions?

  1. Add a TGMProductRegistration component to your application (or DLL). The TGMProductRegistration is located on the IDE component palette tab "GMCtrls".
  2. Put the TGMProductRegistration component on the same form or data module as the components you want to unlock, or on a form or data module that is created earlier than the one with the components you want to unlock.
  3. Set the ProductName property of the TGMProductRegistration component to the component set you want to unlock.
  4. Enter the key guid that corresponds to the persistent guid shown by the TGMProductRegistration component into the KeyGuid property of the TGMProductRegistration component. The Key-Guid calculator for all component sets is free for download on this website.
  5. When the key guid you entered is correct the KeyGuidIsCorrect property of the TGMProductRegistration component will turn to "True" and the DemoTimerIsRunning property will turn to "False".

Note:

Is there any limitation introduced by the TGMProductRegistration component when I distribute my compiled application?

No. Once all components in your application have been unlocked by TGMProductRegistration component(s) there is no further limitation on running or distributing your application.

Will the registry or other parts of the System be accessed by the TGMProductRegistration component(s) when my application is started?

No. The Registry is accessed only one single time when you put a new TGMProductRegistration component on a form or data module (to get the persistent-guid). The Registry will never be accessed again by any TGMProductRegistration component, neither in IDE design mode nor in runtime mode.

What can make the value of the persistent guid property of a TGMProductRegistration component change?

Nothing. The persistent guid is read from the registry when a new TGMProductRegistration component is placed on a form or data module. Once a TGMProductRegistration component has been placed on a form or data module all it's property values are read from and written to the *.dfm file by Delphi, just as for any other component. The value of the persistent guid property of a TGMProductRegistration component therefore will never change even if the one in the registry does. So once unlocked by TGMProductRegistration component(s) the forms and data modules of your application can be run and edited on any other computer regardless of this computers persistent guid.

I'm getting compiler error "Internal error: E1289" when compiling projects containing GM-Components?

I don't know what Internal error E1289 is. Borland should explain this to us. Workaround: Use the source code versions of the GM-Components units and re-build your project.

Do I need to install GM-Components in order to compile the GM-SQL Executer or the GM-Week Services application?

No. All source code is included in the installation. If you don't have the GM-Components installed to your compiler the IDE will complain about unknown components when opening forms. Just press cancel on such IDE errors. Don't press ignore, pressing ignore would delete the component(s). Even though the IDE will not be able to show or modify forms with unknown components it will still compile the complete application with all its features.