Beruflich Dokumente
Kultur Dokumente
Cracklock documentation
Introduction
The current version support all 32 bits versions of Windows from NT to Vista (NT/2K/XP/Vista). For legacy
version of Windows (95, 98 or ME), please download version 3.8.3 from my website.
You probably know the most polymorphic and sadistic virus of this ending century, the so-called "30th day
virus". It attacks the best sharewares as well as the worst ones, introducing as soon as you install them a bug
that prevents them from running beyond a random delay, often 30 days. Cracklock has the leadership in the
fighting challenge against this virus that even McAfee, Norton, Sophos, Thunderbyte and F-Proot seem
unable to deal with.
Cracklock is also a tool that developpers may use to check Y2K-like compatibility for their products without
having to change the system time, thus avoiding side-effects.
What's new ?
It is now possible to run Cracklock from a usb flashdisk. In this mode, the settings are saved on disk in a
Cracklock.settings file. By default this file is stored along with cracklock binaries. An option let you tell
cracklock to save the settings in the current user's Appdata folder or in the Windows registry.
Another option can be set to store the per-application settings in each application's directory. If you run an
executable file called "App.exe" that is (statically or run-time) injected by Cracklock and if there exists an
associated configuration file called "App.exe.cracklock" next to it in the application directory then Cracklock
will load the settings from that file instead of the general cracklock setting storage (the registry or the main
setting file).
Features
z The Manager: an interface which allows you to set up each Cracklock-controlled software an easier and
faster way.
z Contextual help: you can obtain help from anywhere, at any time !
Installation
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 2 de 18
Just run the setup executable file and follow the instructions on the screen.
Note to users of older versions of Cracklock: If a previous version of Cracklock is installed on your
computer, it is better to uninstall it before installing the new version.
Uninstallation
Choose "Cracklock" from the list of applications in the Add/Remove programs applet of the Windows
control panel.
Usage
Cracklock controls a list of programs you set up. When a program from this list needs time or date, Cracklock
operates, bluffing the calling program and returning the pre-determined date or time you have set. So, the
program "thinks" to be at the date/time it accepts for running.
Cracklock protects you from the 30th day bug, a defect that is becoming very frequent in nowadays
software. A program affected by this bug will fail to run when a certain period of time has passed after
its installation.
With the help of Cracklock, developers can readily test or check the "Year 2000 compatibility" (Y2K)
of their software.
Suppose that you want to check the program you are developing for Y2K compatibility. To perform the
test you decide to change the global system date/time to 31th december 1999 and then launch your
program in order to debug it. The drawback of this method is that it affects all the programs currently
running on the machine. One consequence is that the date stamp of the files created or modified by any
software running on Windows will be set to 31th december 1999.
Some other software may even stop working, as if they were "lost in time". That would be the case for
all these poorly developed softwares that are affected by the notorious "30th day bug". If you run such
software while you are testing your program against Y2K compliance, then you will run into trouble:
the bugged sofware will be confused about the date and will stop working.
Cracklock overcomes all these problems by allowing you to specify the date on an application basis.
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 3 de 18
The Manager lets you add and configure application to be controlled by Cracklock. It lets you do the
following 3 basic functions: adding a new application, configure the date and time parameters for an
application, and execute the program (though it is not required to launch your applications from the manager).
Adding applications
To add an application to the list of applications controled by Cracklock, click twice on the Add program and
then select the executable file of your application. A dialog box will show up to let you configure the
parameters for this application.
Note : The application must be a valid 32bits Windows application compatible with Windows 95/98/NT/XP.
Select the program that you want to configure in the manager list. Click on the "Program" menu then on
"Settings...":
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 4 de 18
Choose a date and time using the calendar and clock controls.
Click on "Load preset date/time" in order to load a predefine date/time among the following: the current
system date and time, the file creation date/time, the file's last modification date/time.
You can restrict Cracklock to only affect the time, the date or both by selection the approriate raddio button.
For instance if you choose to alter the time only then the program will run with the system date but with a
fake time. If you choose "date and time" then both will be faked by Cracklock.
You can configure application for Cracklock directly from the Windows Explorer without having to use the
Manager. In Windows Explorer, open the directory containing the executable file of your program.
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 5 de 18
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 6 de 18
In this menu, select "Properties". A window with several tabs show up, select the tab named Cracklock:
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 7 de 18
If you want to enable Cracklock for this program, check the box Cure this program with Cracklock. Check
Show advanced options to show the tabs from the configuration dialog box from the manager.
Advanced options
You may need to tweak some parameters in some cases to make your application work with Cracklock.
System-wide
This will affect the system date and time. With this option, each time you run the controlled program,
the system computer time and date will be changed to the date/time that you have specified. When the
program ends, date and time will be restored to the actual date and time, taking account of elapsed time
during usage of the program. <br> The drawback of this method is that all programs running
simultaneously are affected together, Cracklock in its native method being precisely designed to affect
specific date and time to each program running at one given moment and to avoid this inconvenience.
<br> This option reproduces what you can do yourself manually without Cracklock, with the "date" or
"time" commands under MS/DOS or with the configuration panel under Windows. In my mind, it has
no real benefit.
This "freeze" option allows to set a date/time which never changes, as if the time was frozen. Useful for
programs that work only during a few hours or minutes. <br> For example, if you set 10:00:00
09/22/1981 for this program, during all the run it will "think" the time is 10:00:00 09/22/1981.Ten
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 8 de 18
minutes later, the time will still be 10:00:00 09/22/1981 for the application. If the option is not selected,
however, at the start the program will have a time of 10:00:00 09/22/1981, and ten minutes later it will
be 10:10:00 09/22/1981.
Injection mode
In the "injection mode" tab of the configuration window, you can select between two different modes:
static or run-time
With static-injection, Cracklock will alter the executable file of your application in order to make it load
Cracklock. You can additionally tell Cracklock which file it should modify by selecting an executable
file among the list of dependencies of your application.The license that you signed when you install a
software often prevents you from modifying its executable files - even for the purpose of correcting a
bug, as in the present case - so if you have signed such a license then you must not use static injection.
Using the run-time injection, Cracklock does not modify any executable file from your application,
everything happens at run-time. Note that in this case you need to make sure that the system-wide
injection is activated otherwise you will have to start the program from a special shortcut or from wihtin
the manager.
Starting an application
To execute a program under the control of Cracklock, you can either run it as usual from the shortcut in the
"Start" menu, or selecting the program in the manager and clicking on the Execute menu.
Special case: If the run-time injection mode is selected for the application and if system-wide injection is
deactivated then then you cannot run the program in the normal way. In this case, you can start your
application using one of the following methods:
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 9 de 18
z Open up the "injection mode" tab in the configuration window in the Cracklock manager and click on
the link to create a desktop shortcut. You can then run the application directly from this shortcut.
where "C:\PROGRAM FILES\Cracklock\MCL.EXE" is the full path to the MCL.EXE file installed in
the Cracklock directory, C:\APP\APP.EXE is the full path to the executable .EXE file of your program,
and [program_parameters] are the optional parameters required by your program.
From the Windows Explorer, go to the folder containing your application executable file:
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 10 de 18
Examples
Cracklock comes with two example applications showing the system date/time. To check that Cracklock
works correctly, you can try to configure these two examples in the Manager. These two aplications are
located in the "Examples" subfolder of the Cracklock directory.
Table 1. Examples
Programming
File Description
language
DigClock program from the book Programming Windows 95 by Charles
vcdate.exe Visual C++
Petzold (Microsoft Press)
vbdate.exe A test program of my own. Visual Basic 5.0
Known limitations
z Under Windows NT, Cracklock cannot modify system files like MSVCRT.DLL that are located in the
system directory,
z the current version of Cracklock doesn't recognize programs configurated with the 1.x and 2.x versions,
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 11 de 18
z Cracklock does not work with 16 bits programs (those designed for Windows 3.1).
Miscellaneous
EULA
NO WARRANTY. The Software is being delivered to you "AS IS" and the Author makes no warranty as to
its use or performance. The Author provides no technical support, warranties or remedies for the Software.
THE AUTHOR AND ITS SUPPLIERS DO NOT AND CANNOT WARRANT THE PERFORMANCE OR
RESULTS YOU MAY OBTAIN BY USING THE SOFTWARE.
I assume no responsibility for any use nor effects subsequent to the use of Cracklock. Crackclock is not
intended for illegal uses. Users only are responsible of the usage they make of Cracklock. In particular, it is
their responsibility to pay for the licence of the software runned under the control of Cracklock.
Acknowledgment
I thank all of the persons who have contributed to Cracklock: My Dad, Dominique Blum for the english
version of the documentation and for his spell-check in the french documentation, my family (Dominique,
Bianca, ric et Gwen) for their constant support, Ernesto Prez Estvez for the Spanish version of Cracklock
and its documentation. Tarik Kallida for the Arabic version of Cracklock and its short documentation and
Svetislav Orlovic for the Croatian version of Cracklock.
Important note
Cracklock is free. You are encouraged to distribute it to your friends. But never forget that you use a 30days
limited version of Cracklock ;-)
Contact
Change logs
Change log
z Chinese translation updated. This may become more useful now that Cracklock works in China ;-
)
z Fixed: the default parameters for the control panel date and time applet was incorrectly set during
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 12 de 18
installation.
z Examples: new clock example written in C#. The VCDate and VBDate have been renamed into C
Clock Example and VB Clock Example
z New: a manifest file has been added to ensure that version 6.0 of the Windows Common controls
DLL is used in order to avoid the annoying beep happening on item selection under Windows
Vista.
z New: The manager now allows you to configure a command line argument for each application.
It will be appended to the command line when the application is runned from within the manager.
z New: per-application setting called "stand-alone mode". In the normal mode the behaviour is the
same as before. In full stand-alone mode, the settings and the injected DLL are copied to the
program folder. In a third "in-between" mode, only the settings are stored in the application
folder. When adding a new application, if the file App.exe.cracklock is present in the directory
then default settings are loaded from this file. It is deleted when when the application is removed
from cracklock.
z New: option to let the user change the command parameters that are used to start the application
from the Manager.
z New: option in the general settings: Shared/Stand-alone installation. In shared mode, Cracklock's
directory is added to the PATH environment variable. In stand-alone mode, the injected DLL is
copied to each application's folder.
z New: The manager now contains a manifest to ensure that version 6.0 of the Windows Common
controls DLL is used in order to avoid the annoying beep happening on item selection under
Windows Vista.
z New: an option in the general settings allows to set the default injection mode when adding new
applications to Cracklock.
z New: an option that allows one to set the location of the general settings (Registry or INI file). It
is also possible to save the application settings in each application's directory (this setting can be
overwritten on a per-application basis).
z New: a description can be assigned for each application listed in the manager.
z Bug fixed: remove a spurious message reporting that CLKERN.DLL is in use when trying to
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 13 de 18
z Bug fixed: In some very particular cases, some API calls were properly hooked.
z Setup: There is now a new 'Flashdisk installation' mode. In this mode, nothing is written in the
Windows Registry and shortcuts are not created.
z Setup: a new option let you choose where you want to store the setting file (registry, application
data folder or cracklock's folder).
z Setup: import the settings from the registry to the INI file if the user choose to store settings in an
INI file.
z Change: Definition file CLKERN.def regenerated with the latest version of Kernel32.dll
z Fixed: When the import table of a PE file contained more than one occurrences of the module
KERNEL32.DLL, the PE file could not be backed-up automatically by the manager.
z Bug fix: In some circumstance, the Cracklock manager window positioned itself in the invisible
part of the screen.
z Fixed: The setup can again be run without requiring administrator privileges
z Fixed: applications crashed if no virtual mode (time, date or timezone) was selected.
z Fixed: PE executable files containing a Bound Import table caused a crash of the application.
z Fixed: Link checksum in PE files are now recalculated whenever the files are altered (this only
occurs in static injection mode).
z Fixed: The setup now kills the resident injector before copying files
z New feature: you can create a shortcut on the desktop that will start the application with
Cracklock loader. (There is a hotlink in the configuration dialog to create the shortcut).
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 14 de 18
z New feature: there is now a Setting window available from the Manager that allows you to
configure general settings for Cracklock. It contains the following options:
{ Add/remove Cracklock to the PATH environment variable (so that an application can find
CLKERN.DLL if it uses static injection)
{ An option to copy CLKERN.dll to the folder of each application. Usefull if you use static
injection and you don't want Cracklock to be in the PATH environment variable.
z The configuration dialog has been redesigned (Note that some messages have not been translated
in other languages yet).
z The manager's list contains new columns showing the date, time and timezone selected for each
application.
z Fixed: the loader injection method (MCL.EXE) now works again. With this method, it is not
necessary to alter any executable file to activate Cracklock.
z Fixed: the loader MCL.exe now parses correctly its command line parameters. It is now possible
to load an application with optional command line parameters with the syntax "MCL.EXE
APP.EXE APP_PARAMETERS"
z Fixed: the system-wide option (when the system time is changed for real instead of being
virtualized) did not work properly.
z Setup: new option to decide whether to install a system-wide injector resident in memory
(CLINJECT.exe launched at the logon or CLKERN.DLL loaded as an AppInit DLL)
z Update: CLKERN.dll has been updated to take into account new win32 kernel functions that
have been introduced in recent Windows updates
z A new example is now added automatically to the list of managed applications: it allows you to
test Cracklock on the Windows control panel date/time applet.
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 15 de 18
z Internal: the Makefiles that were used to compile the sources are now replaced by a Visual Studio
project. MSBuild is now used instead of GNU make.
z Internal: the new "secure" versions of the string functions from the standard C library are now
used. This protects Cracklock from potential buffer overflow attacks.
z Fixed: applications configurations are now stored at the user level instead of the machine level
(this permits to use Cracklock on a public computer)
z Internal fix: the make build system is used in place of the Perl script files. Visual Studio Toolkit
2003 is used to compile the C++ sources.
z Fixed: selecting a language un the manager now affects the shell extension with no need to restart
the Windows explorer
z UI bugs fixed
z Multilingual installation
z A very rare bug happening during the uninstallation has been fixed
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 16 de 18
z Shellext/Manager: Now, the selected file in the dependency list can be unselected without being
grayed.
z Correction of a bug which avoid the recognition of application referenced by a short file name.
z Cracklock manager
z ShellExt : re-using of backup file when it exists instead of modifying DLL (with original date
preserved after the file backup)
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 17 de 18
z ShellExt : in the explorer, the contextual menu which launches an app in loader mode is shown
only if necessary
z Loader: when apps are executed in loader mode, Cracklock enters the debug mode only if
necessary
z Kernel: updates the list of DLL's each time a new DLL is loaded
z Long File Names are preserved when files are modified after a reboot
z BUG fixed: the list of files which can't be modified is no more empty.
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017
Cracklock documentation Pgina 18 de 18
mk:@MSITStore:C:\Program%20Files%20(x86)\Cracklock\Help\cracklock-en.chm::/ind... 12-12-2017