Difference between revisions of "KOL-CE/fr"

From Free Pascal wiki
Jump to navigationJump to search
(New page: {{KOL-CE}} ==Introduction== KOL-CE est le portage pour Free Pascal/Lazarus de KOL&MCK développé par Vladimir Kladov (http://kolmck.net). KOL-CE est développé par Yury Sidorov et est di...)
Line 7: Line 7:
 
MCK est un paquet Lazarus permettant le développement VISUEL de projet KOL-CE avec l'IDE Lazarus.
 
MCK est un paquet Lazarus permettant le développement VISUEL de projet KOL-CE avec l'IDE Lazarus.
  
Initialement, KOL-CE était planifié pour être seulement une portage de KOL pour [[WinCE port|WinCE]]. Mais, ultérieurement, il a été décidé de conserver les fonctionnalités Win32 et de le faire fonctionner avec FPC sans problème. La version original de KOL est prévue pour Delphi et ne fonctionne pas correctement avec FPC. La version originale de MCK ne peut pas être utilisée avec Lazarus.
+
Initialement, KOL-CE était planifié pour être seulement une portage de KOL pour [[WinCE port|WinCE]]. Mais, ultérieurement, il a été décidé de conserver les fonctionnalités Win32 et de le faire fonctionner avec FPC sans problème. La version original de KOL est prévue pour Delphi et ne fonctionne pas correctement avec FPC. La version original de MCK ne peut pas être utilisée avec Lazarus du tout.
  
=== Configuration nécessaire ===
+
=== Requirements ===
 
* Free Pascal compiler 2.2.0 ou ultérieur pour Win32.
 
* Free Pascal compiler 2.2.0 ou ultérieur pour Win32.
 
* arm-wince cross compiler 2.2.0 ou ultérieur pour Win32 (pour développement [[WinCE port|WinCE]).
 
* arm-wince cross compiler 2.2.0 ou ultérieur pour Win32 (pour développement [[WinCE port|WinCE]).
Line 44: Line 44:
 
NOTE: Si vous n'arrivez pas à voir tous les composants KOL sur la palette, ajuster verticalement la taille de la palette de composants. Vous verrez alors la seconde ligne des composants de l'onglet KOL (comme sur la copie d'écran ci-dessus).
 
NOTE: Si vous n'arrivez pas à voir tous les composants KOL sur la palette, ajuster verticalement la taille de la palette de composants. Vous verrez alors la seconde ligne des composants de l'onglet KOL (comme sur la copie d'écran ci-dessus).
  
La mise à jour du paquet MCK est aussi simple que cela. Il suffit juste d'écraser les sources KOL-CE avec la nouvelle version, d'ouvrir le paquet MCK et de cliquer sur '''Install''' pour recompiler le paquet.
+
MCK package upgrade is very simple as well. Just overwrite KOL-CE sources with new version, open MCK package and press '''Install''' button to recompile the package.
  
== Utilisation de MCK ==
+
== Using MCK ==
=== Création d'un projet MCK ===
+
=== Creating MCK project ===
 
[[Image:MCKForm.png|right|MCK form]]
 
[[Image:MCKForm.png|right|MCK form]]
# Lancer Lazarus et créer une nouvelle application en utilisant le menu '''Fichier > Nouveau...'''.
+
# Start Lazarus and create new Application using '''File > New...''' menu item.
# NE PAs placer de composant dans la fiche à ce niveau. Choisir '''Fichier > Tout enregistrer''' et sélectionner le dossier de  destination pour votre projet. Noter que TOUS LES FICHIERS de votre projet DEVRONT TOUJOURS ETRE PLACES DANS LE MEME DOSSIER! Vous pouvez changer le nom de l'unité de la fiche, mais pas celui du projet. Laisser le nom du projet par défaut <tt>project1.lpi</tt>
+
# DO NOT place any components on the form at this stage. Choose '''File > Save All''' and select the destination folder for your project. Note that ALL FILES of your project ALWAYS HAVE TO BE PLACED IN THE SAME FOLDER! You may change the name of the form's unit, but do not change the name of the project file. Leave project name default as <tt>project1.lpi</tt>
# Placer le composant <tt>'''TKOLProject'''</tt> dans la fiche.
+
# Place the <tt>'''TKOLProject'''</tt> component onto the form.
# Donner un nom au projet MCK résultant en modifiant la propriété <tt>'''ProjectDest'''</tt> (le chemin NE DOIT PAS être inclus). Si vous saisissez <tt>MyKOLProg</tt>, par exemple, alors le projet MCK résultant sera nommé <tt>MyKOLProg.lpi</tt>. Le nom du fichier EXE sera (comme vous l'avez déjà deviné) <tt>MyKOLProg.exe</tt>.<br>[[Image:KOLProjectDest.png||ProjectDest property]]
+
# Set the name of the resulting MCK project by changing the <tt>'''ProjectDest'''</tt> property (path MUST NOT be included). If you type <tt>MyKOLProg</tt>, for instance, then the resulting MCK project will be named <tt>MyKOLProg.lpi</tt>. The EXE file's name will be (as you might have guessed already) <tt>MyKOLProg.exe</tt>.<br>[[Image:KOLProjectDest.png||ProjectDest property]]
# Placer le composant <tt>'''TKOLForm'''</tt> dans la fiche.
+
# Drop the <tt>'''TKOLForm'''</tt> component onto the form.
# Enregistrer le projet courant.
+
# Save current project.
# Ouvrir le projet résultant que vous avez spécifié dans la propriété <tt>'''ProjectDest'''</tt> (<tt>MyKOLProg.lpi</tt> dans notre exemple, il doit se trouver dans le même dossier). Après cela, vous povez détruire tous les fichiers <tt>project1.*</tt> - ces fichiers n'étant plus nécessaires.
+
# Open the resulting project which you specified in <tt>'''ProjectDest'''</tt> property (<tt>MyKOLProg.lpi</tt> in our example, it should be found in the same directory). After that delete all <tt>project1.*</tt> files - these files are no longer necessary.
# Amusez vous avec votre nouveau projet KOL/MCK (ajuster les paramètres, placer des composants TKOL..., comiler, exécuter, débugguer, etc.)
+
# Play with your new KOL/MCK Project (adjust Parameters, drop TKOL... components, compile, run, debug, etc.) Enjoy!
  
=== Ajout d'une fiche ===
+
=== Adding a form ===
# Sélectionner le menu '''Fichier > Nouvelle fiche''' .
+
# Select '''File > New form''' menu item.
# Enregistrer la fiche dans le MEME DOSSIER que votre projet.
+
# Save the form IN THE SAME directory where project is located.
# Placer l'objet <tt>'''TKOLForm'''</tt> dans cette fiche.
+
# Drop <tt>'''TKOLForm'''</tt> object onto it.
# Vérifier que vous avez bien placé le composant <tt>'''TKOLApplet'''</tt> dans la fiche principale.
+
# Be sure that you have <tt>'''TKOLApplet'''</tt> component dropped on the main form.
# Si <tt>AutoBuild</tt> est sur off: sélectionner le composant <tt>'''TKOLProject'''</tt> dans la fiche principale et double cliquer sur sa propriété <tt>'''Build'''</tt>. (Sinon, tout devrait déjà être fait, n'est ce pas?).
+
# If <tt>AutoBuild</tt> is turned off: select <tt>'''TKOLProject'''</tt> component in main form and double click its property <tt>'''Build'''</tt>. (Otherwise, all should be done already, isn't it?).
  
=== Ecriture d'un code ===
+
=== Writing code ===
Ne pas utiliser d'unité des bibliothèques RTL/FCL/LCL, et plus particulièrement des unités SysUtils, Classes, Forms, etc. Tout ce que vous avez besoin, vous devriez le trouver dans les unités KOL, Windows, Messages units. Et peut être, vous pouvez écrire du code vous même (ou le copier à partir d'autres sources).
+
 
Quand vous écrivez du code dans le projet miroir - on le place habituellement dans le gestionnaire d'évènements.
+
Do not use names from RTL/FCL/LCL, especially from SysUtils, Classes, Forms, etc. All what you need, you should find in KOL, Windows, Messages units. And may be, write by yourself (or copy from another sources).
Vous pouvez aussi ajouter du code où vous le souhaitez mais éviter de modifier la première section de la déclaration de classe de votre fiche LCL miroir. Et ne pas modifier les fichiers INC générés automatiquement.
+
When you write code in mirror project - usually place it in event handlers.
Toujours garder à l'esprit, que le code, que vous écrivez dans le projet miroir, doit être accepté aussi bien par LCL que par KOL. Par LCL - au niveau de la compilation du projet miroir (et ceci est nécessaire, parce qu'autrement la conversion du projet miroir en un projet KOL ne sera pas possible). Et par KOL - au niveau de la compilation du code écrit dans l'espace des noms de KOL.
+
You also can add any code where you wish but avoid changing first section of your mirror LCL form class declaration. And do not change auto-generated inc-files.
 +
Always remember, that code, that you write in mirror project, must be accepted both by LCL and KOL. By LCL - at the stage of compiling mirror project (and this is necessary, because otherwise converting mirror project to reflected KOL project will not be possible). And by KOL - at the stage of compiling written code in KOL namespace.
  
 
=== IMPORTANT ===
 
=== IMPORTANT ===
Afin de résoudre les conflits entre les mots <tt>LCL.Self</tt> et <tt>KOL.@Self</tt>, qui sont interprétés différemment dans KOL et LCL, des champs spéciaux sont introduits - <tt>Form</tt>. Dans LCL, la propriété <tt>Form</tt> du composant <tt>TKOLForm</tt> "retournent" <tt>Self</tt>, i.e. l'objet fich lui-même. Et dans KOL, <tt>Form: PControl</tt> est un champ de l'objet, contenant l'objet fiche résultant. Avec cela, il est correct de modifier les propriétés de la fiche de la manière suivante :  
+
To resolve conflict between words <tt>LCL.Self</tt> and <tt>KOL.@Self</tt>, which are interpreted differently in KOL and LCL, special field is introduced - <tt>Form</tt>. In LCL, <tt>Form</tt> property of <tt>TKOLForm</tt> component "returns" <tt>Self</tt>, i.e. form object itself. And in KOL, <tt>Form: PControl</tt> is a field of object, containing resulting form object. Since this, it is correctly to change form's properties in following way:  
 
  Form.Caption := 'Hello!';  
 
  Form.Caption := 'Hello!';  
(Bien que l'ancien opérateur Caption := 'Hello!'; est compilé normalement lors de la conversion du projet miroir en KOL, il est incorrect dans l'environnement KOL).
+
(Though old-style operator Caption := 'Hello!'; is compiled normally while converting mirror project to KOL, it will be wrong in KOL environment).
Mais la discussion ci dessus <tt>Form</tt> est seulement destinée à l'accès des propriétés de la fiche - pas à ceux des contrôles enfants. Vous accéderez au contrôle des enfants et au gestionnaire d'évènements des fiches par la voie habituelle. e.g. :
+
But discussed above word <tt>Form</tt> is only to access form's properties - not its child controls. You access child controls and form event handlers by usual way. e.g.:  
 
  Button1.Caption := 'OK';
 
  Button1.Caption := 'OK';
 
  Button1Click(Form);
 
  Button1Click(Form);
  
=== Création de fiches au moment de l'exécution (Run-time) ===
+
=== Run-time form creation ===
Il est possible de créer plusieurs instances de la même fiche au moment de l'exécution. Et au moins, il est possible de faire une fiche non auto-créee, et de la créer par programmation quand cela est nécessaire. Utiliser pour cela la fonction globale <tt>NewForm1</tt> (remplacer Form1 par le nom de votre fiche miroir), par exemple:
+
It is possible to create several instances of the same form at run-time. And at least, it is possible to make form not AutoCreate, and create it programmatically when needed. Use global function <tt>NewForm1</tt> (replacing Form1 with your mirror form name), for instance:
 
  TempForm1 := NewForm1( Applet );
 
  TempForm1 := NewForm1( Applet );
Pour que cela soit possible, NE JAMAIS accéder à des variables globales créées dans l'unité durant la conversation,To make this possible, NEVER access global variable created in the unit during conversation, unless You know why You are doing so. Refer to Form variable instead.
+
To make this possible, NEVER access global variable created in the unit during conversation, unless You know why You are doing so. Refer to Form variable instead.
  
 
== WinCE ==
 
== WinCE ==
 
====Setup====
 
====Setup====
 
[[Image:arm-wince-target.png|right|arm-wince target]]
 
[[Image:arm-wince-target.png|right|arm-wince target]]
Vous devez installer le compilateur arm-wince cross pour Win32 pour pouvoir compiler des exécutables WinCE. On peut l'obtenir [http://www.freepascal.org/download.var ici].
+
You need to install arm-wince cross compiler for Win32 to compile WinCE executables. Get it [http://www.freepascal.org/download.var here].
  
Pour compiler vers une cible arm-wince, ouvrir les options du compilateur de votre projet en utilisant le menu '''Projet > Options du compilateur...'''. Ouvrir l'onglet '''Code''' et modifier les propriétés Plateformes cibles en arm-wince.
+
To compiler for arm-wince target open compiler options of your project using '''Project > Compiler options...''' menu item. Open '''Code''' tab and change target platform to arm-wince.
  
'''NOTE:''' Vous pouvez recevoir un message d'erreur lors de la compilation d'un projet KOL-CE pour WinCE :
+
'''NOTE:''' You can receive the following error while compiling your KOL-CE project for WinCE:
 
  Compiling resource KOL-CE.rc
 
  Compiling resource KOL-CE.rc
 
  arm-wince-windres.exe: no resources
 
  arm-wince-windres.exe: no resources
Line 97: Line 98:
 
  KOL.PAS(57901) Fatal: There were 1 errors compiling module, stopping
 
  KOL.PAS(57901) Fatal: There were 1 errors compiling module, stopping
  
Dans ce cas, vous devez éditer la variable d'environnement Windows '''PATH''' et ajouter le chemin pointant vers les sources binaires de fpc pour win32.<br>
+
In such case you need to edit Windows '''PATH''' environment variable and add path to folder where win32 fpc binaries are located.<br>
Pour localiser ce chemin, aller dans le menu '''Configuration > Options d'environnement''' dans Lazarus et noter le chemin du compilateur.<br>
+
To find out which path to add, go to '''Environment options''' in Lazarus and see compiler path.<br>
'''Quitter Lazarus avant d'éditer la variable PATH'''.<br>
+
'''Quit Lazarus before editing PATH'''.<br>
Pour éditer cette variable '''PATH''', cliquer avec le bouton droit sur l'icone '''Poste de travail'''. choisir le menu Propriétés et dans l'onglet '''Avancé''' cliquer sur le bouton '''Variables d'environnement'''.
+
To edit '''PATH''' variable right click on '''My Computer''' icon go to '''Advanced''' tab and click '''Environment Variables''' button.
  
====Trucs et notes====
+
====Hints and notes====
* Pour obtenir des applications plein écran sur la plupart des Pocket PC, il ne faut pas modifier la position et la taille de la fiche. En cas de modification, la fiche apparaîtrait comme une fiche dialogue avec un titre et un bouton de fermeture. dans MCK placer les propriétés '''defaultSize''' et '''defaultPosition''' de TKOLForm à True pour obtenir une application plein écran.
+
* To make form fullscreen as most Pocket PC applications have, don't change the form position and size. If form size and/or position was changed the form will look like dialog with caption and close button. In MCK set '''defaultSize''' and '''defaultPosition''' of TKOLForm to True to make form fullscreen.
  
====Problèmes connus====
+
====Known issues====
* Les composants suivants ne sont pas supportés : RichEdit, TrayIcon.
+
* The following components are not supported: RichEdit, TrayIcon.
* Seuls les styles de gradient gsVertical et gsHorizontal sont supportés.
+
* Only gsVertical, gsHorizontal gradient panel styles are supported.
* L'alignement des textes ne fonctionne pas avec le contrôle d'édition de ligne simple. Utiliser un composant memo si vous avez besoin d'aligner le texte.
+
* Text alignment does not work in single line edit control. Use memo if you need text alignment.
  
 
== Documentation ==
 
== Documentation ==
* Visiter le site WEB officiel de KOL&MCK pour obtenir documentations et informations : http://kolmck.net
+
* Visit official KOL&MCK website for documentation and information: http://kolmck.net
* La documentation MCK se situe dans le fichier '''KOLmirrorReadme.txt''' dans le dossier MCK.
+
* Read MCK documentation in '''KOLmirrorReadme.txt''' file inside MCK folder.
  
== KOL-CE dans des applications==
+
== KOL-CE in real-world applications ==
 
* [http://www.cp-lab.com/windows-mobile.html Password Manager XP Mobile]
 
* [http://www.cp-lab.com/windows-mobile.html Password Manager XP Mobile]
 
* [http://blog.carolos.za.net/2007/05/charmed-for-pocket-pc-beta-030.html ChARMeD disassembler]
 
* [http://blog.carolos.za.net/2007/05/charmed-for-pocket-pc-beta-030.html ChARMeD disassembler]
 
* [http://www.jongma.org/WMWifiRouter/ WMWifiRouter]
 
* [http://www.jongma.org/WMWifiRouter/ WMWifiRouter]
  
== Voir aussi ==
+
== See also ==
* Le site officiel KOL&MCK http://kolmck.net
+
* Official KOL&MCK website http://kolmck.net
* La page KOL-CE sur SourceForge http://sourceforge.net/projects/kol-ce/
+
* KOL-CE page at SourceForge http://sourceforge.net/projects/kol-ce/
 
* [[WinCE port|WinCE port of Free Pascal]]
 
* [[WinCE port|WinCE port of Free Pascal]]
 
* [[Windows CE Interface]]
 
* [[Windows CE Interface]]
Line 127: Line 128:
  
 
== Contacts ==
 
== Contacts ==
Reporter des bugs, soumettre des patches et poser des questions sur la page du projet sur SourceForge: http://sourceforge.net/projects/kol-ce/
+
Report bugs, submit patches and ask questions at project's page at SourceForge: http://sourceforge.net/projects/kol-ce/

Revision as of 19:40, 29 March 2008

Windows logo - 2012.svg

Cet article s'applique uniquement à Windows.

Voir aussi: Multiplatform Programming Guide/fr

WinCE Logo.png

Cet article s'applique uniquement à Windows CE.

Voir aussi: Multiplatform Programming Guide/fr

English (en) français (fr) 한국어 (ko) русский (ru) 中文(中国大陆)‎ (zh_CN) 中文(台灣)‎ (zh_TW)

Introduction

KOL-CE est le portage pour Free Pascal/Lazarus de KOL&MCK développé par Vladimir Kladov (http://kolmck.net). KOL-CE est développé par Yury Sidorov et est distribué sous licence wxWindows Library Licence.

KOL-CE permet de créer des applications Win32/WinCE très compactes (à partir de ~40Koctets pour un projet avec une form vide).

MCK est un paquet Lazarus permettant le développement VISUEL de projet KOL-CE avec l'IDE Lazarus.

Initialement, KOL-CE était planifié pour être seulement une portage de KOL pour WinCE. Mais, ultérieurement, il a été décidé de conserver les fonctionnalités Win32 et de le faire fonctionner avec FPC sans problème. La version original de KOL est prévue pour Delphi et ne fonctionne pas correctement avec FPC. La version original de MCK ne peut pas être utilisée avec Lazarus du tout.

Requirements

  • Free Pascal compiler 2.2.0 ou ultérieur pour Win32.
  • arm-wince cross compiler 2.2.0 ou ultérieur pour Win32 (pour développement [[WinCE port|WinCE]).
  • Lazarus 0.9.23 ou ultérieur pour Win32.

Cibles supportées

  • Toutes versions 32bits de Windows: de Windows 95 à Vista.
  • Pocket PC et smartphones basés sur Windows CE.

Téléchargement

Télécharger la dernière release de KOL-CE ici.

Vous pouvez aussi obtenir les sources de KOL-CE les plus récentes via svn en utilisant ce lien : https://kol-ce.svn.sourceforge.net/svnroot/kol-ce/trunk

Installation


Si vous utilisez Lazarus 0.9.25 ou une version ultérieur, vous devez reconstruire Lazarus avec l'option DisableFakeMethods avant l'installation du paquet MCK.

Pour cela :

  1. Lancer Lazarus.
  2. Choisir le menu Outils > Configurer "Build Lazarus"... menu item.
  3. Choisir Clean Up + Build all dans l'onglet Options de construction rapide.
  4. Ouvrir l'onglet Options de construction avancées et ajouter -dDisableFakeMethods dans le champ Options.
  5. Cliquer sur le bouton Construire pour reconstruire Lazarus.

MCK package
  1. Télécharger les sources de KOL-CE et placer les dans un répertoire de votre système de fichiers.
  2. Lancer Lazarus et choisir le menu Composants > Ouvrir un fichier paquet (.lpk). Se placer dans le dossier MCK et choisir le fichier MirrorKOLPackage.lpk.
  3. La fen^tre de gestion des paquet s'ouvre. Cliquer sur le bouton Installer.
  4. Lazarus compile alors le paquet MCK et l'IDE sera redémarrée.
  5. Après le redémarrage, un onglet KOL apparaît dans la palette de composants.

KOL components palette

NOTE: Si vous n'arrivez pas à voir tous les composants KOL sur la palette, ajuster verticalement la taille de la palette de composants. Vous verrez alors la seconde ligne des composants de l'onglet KOL (comme sur la copie d'écran ci-dessus).

MCK package upgrade is very simple as well. Just overwrite KOL-CE sources with new version, open MCK package and press Install button to recompile the package.

Using MCK

Creating MCK project

MCK form
  1. Start Lazarus and create new Application using File > New... menu item.
  2. DO NOT place any components on the form at this stage. Choose File > Save All and select the destination folder for your project. Note that ALL FILES of your project ALWAYS HAVE TO BE PLACED IN THE SAME FOLDER! You may change the name of the form's unit, but do not change the name of the project file. Leave project name default as project1.lpi
  3. Place the TKOLProject component onto the form.
  4. Set the name of the resulting MCK project by changing the ProjectDest property (path MUST NOT be included). If you type MyKOLProg, for instance, then the resulting MCK project will be named MyKOLProg.lpi. The EXE file's name will be (as you might have guessed already) MyKOLProg.exe.
    ProjectDest property
  5. Drop the TKOLForm component onto the form.
  6. Save current project.
  7. Open the resulting project which you specified in ProjectDest property (MyKOLProg.lpi in our example, it should be found in the same directory). After that delete all project1.* files - these files are no longer necessary.
  8. Play with your new KOL/MCK Project (adjust Parameters, drop TKOL... components, compile, run, debug, etc.) Enjoy!

Adding a form

  1. Select File > New form menu item.
  2. Save the form IN THE SAME directory where project is located.
  3. Drop TKOLForm object onto it.
  4. Be sure that you have TKOLApplet component dropped on the main form.
  5. If AutoBuild is turned off: select TKOLProject component in main form and double click its property Build. (Otherwise, all should be done already, isn't it?).

Writing code

Do not use names from RTL/FCL/LCL, especially from SysUtils, Classes, Forms, etc. All what you need, you should find in KOL, Windows, Messages units. And may be, write by yourself (or copy from another sources). When you write code in mirror project - usually place it in event handlers. You also can add any code where you wish but avoid changing first section of your mirror LCL form class declaration. And do not change auto-generated inc-files. Always remember, that code, that you write in mirror project, must be accepted both by LCL and KOL. By LCL - at the stage of compiling mirror project (and this is necessary, because otherwise converting mirror project to reflected KOL project will not be possible). And by KOL - at the stage of compiling written code in KOL namespace.

IMPORTANT

To resolve conflict between words LCL.Self and KOL.@Self, which are interpreted differently in KOL and LCL, special field is introduced - Form. In LCL, Form property of TKOLForm component "returns" Self, i.e. form object itself. And in KOL, Form: PControl is a field of object, containing resulting form object. Since this, it is correctly to change form's properties in following way:

Form.Caption := 'Hello!'; 

(Though old-style operator Caption := 'Hello!'; is compiled normally while converting mirror project to KOL, it will be wrong in KOL environment). But discussed above word Form is only to access form's properties - not its child controls. You access child controls and form event handlers by usual way. e.g.:

Button1.Caption := 'OK';
Button1Click(Form);

Run-time form creation

It is possible to create several instances of the same form at run-time. And at least, it is possible to make form not AutoCreate, and create it programmatically when needed. Use global function NewForm1 (replacing Form1 with your mirror form name), for instance:

TempForm1 := NewForm1( Applet );

To make this possible, NEVER access global variable created in the unit during conversation, unless You know why You are doing so. Refer to Form variable instead.

WinCE

Setup

arm-wince target

You need to install arm-wince cross compiler for Win32 to compile WinCE executables. Get it here.

To compiler for arm-wince target open compiler options of your project using Project > Compiler options... menu item. Open Code tab and change target platform to arm-wince.

NOTE: You can receive the following error while compiling your KOL-CE project for WinCE:

Compiling resource KOL-CE.rc
arm-wince-windres.exe: no resources
KOL.PAS(57901) Error: Error while linking
KOL.PAS(57901) Fatal: There were 1 errors compiling module, stopping

In such case you need to edit Windows PATH environment variable and add path to folder where win32 fpc binaries are located.
To find out which path to add, go to Environment options in Lazarus and see compiler path.
Quit Lazarus before editing PATH.
To edit PATH variable right click on My Computer icon go to Advanced tab and click Environment Variables button.

Hints and notes

  • To make form fullscreen as most Pocket PC applications have, don't change the form position and size. If form size and/or position was changed the form will look like dialog with caption and close button. In MCK set defaultSize and defaultPosition of TKOLForm to True to make form fullscreen.

Known issues

  • The following components are not supported: RichEdit, TrayIcon.
  • Only gsVertical, gsHorizontal gradient panel styles are supported.
  • Text alignment does not work in single line edit control. Use memo if you need text alignment.

Documentation

  • Visit official KOL&MCK website for documentation and information: http://kolmck.net
  • Read MCK documentation in KOLmirrorReadme.txt file inside MCK folder.

KOL-CE in real-world applications

See also

Contacts

Report bugs, submit patches and ask questions at project's page at SourceForge: http://sourceforge.net/projects/kol-ce/