Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Mise à jour de la liste de tâches à la prochaine synchronisation

4 réponses
Avatar
Dota
Bonjour,

Je ne sais pas si je suis sur le bon forum, car c'est la première fois
que je poste ici. Si ce n'est pas le cas, merci de m'orienter ailleurs :)

Je travaille sur un programme en Delphi qui gère une liste de tâches
dans une base de données MySQL.

Je cherche un moyen simple d'injecter ces données dans le Palm Desktop
(et dans le Palm lui-même), les utilisateurs aimant bien cette application.

Les tâches gérées par mon application doivent se trouver sur le Palm et
sur le Palm Desktop. Les taches créées et gérées par le Palm ou le Palm
Desktop coexisteront au sein de ces applications avec celles provenant
de mon application, mais les tâches modifiées dans le Palm ou le Palm
Desktop n'auront pas à se synchroniser

Je pensais à une sorte de mécanisme du genre de "l'installation rapide"
du Palm où je placerai en vue de la prochaine synchronisation un fichier
pdb de ma composition comportant les mises à jour à effectuer.

Je ne sais pas

- si c'est possible,
- quel est le format à utiliser (comment structurer les données), etc.
- comment placer automatiquement un fichier en attente de synchronisation,
- s'il y a d'autres types de solutions

Sinon.. j'envisage d'étudier le format .dat du fichier todo et d'aller
le modifier directement. Mais là aussi j'aurai besoin de lumières.

Si vous avez des lumières, celà me sera très précieux.

Merci :)

4 réponses

Avatar
PYT
Dota a écrit :
Bonjour,

Je ne sais pas si je suis sur le bon forum, car c'est la première fois
que je poste ici. Si ce n'est pas le cas, merci de m'orienter ailleurs :)

Je travaille sur un programme en Delphi qui gère une liste de tâches
dans une base de données MySQL.

Je cherche un moyen simple d'injecter ces données dans le Palm Desktop
(et dans le Palm lui-même), les utilisateurs aimant bien cette application.

Les tâches gérées par mon application doivent se trouver sur le Palm et
sur le Palm Desktop. Les taches créées et gérées par le Palm ou le Palm
Desktop coexisteront au sein de ces applications avec celles provenant
de mon application, mais les tâches modifiées dans le Palm ou le Palm
Desktop n'auront pas à se synchroniser

Je pensais à une sorte de mécanisme du genre de "l'installation rapide"
du Palm où je placerai en vue de la prochaine synchronisation un fichier
pdb de ma composition comportant les mises à jour à effectuer.

Je ne sais pas

- si c'est possible,
- quel est le format à utiliser (comment structurer les données), etc.
- comment placer automatiquement un fichier en attente de synchronisation,
- s'il y a d'autres types de solutions

Sinon.. j'envisage d'étudier le format .dat du fichier todo et d'aller
le modifier directement. Mais là aussi j'aurai besoin de lumières.

Si vous avez des lumières, celà me sera très précieux.

Merci :)


Va voir chez PalmSource. Il y aura surement ce que tu désires.

Sinon HB++ propose il me semble des composants pour cela

Enfin si vraiment tu es deserpéré, Windev(c)de PC Soft permet de taper
directement dans les bases du desktop palm.

PYT
Avatar
Dota
PYT a écrit :

Va voir chez PalmSource. Il y aura surement ce que tu désires.





Sinon HB++ propose il me semble des composants pour cela

Enfin si vraiment tu es deserpéré, Windev(c)de PC Soft permet de taper
directement dans les bases du desktop palm.



Merci de ces pistes, j'ai jetté un oeil à celà.

J'ai cependant des contraintes d'outils à utiliser (Delphi ou Borland
C++) en raison des API que j'utilise dans mon application, alors je ne
suis pas sûr de pouvoir utiliser une plateforme de développement
totalement différente.

J'espérait plutôt pouvoir utiliser une fonctionnalité existante de
HotSync Manager interfacée avec mon code.
Avatar
Dota
Patrick Vuichard a écrit :
Dota a écrit, le 27/09/2006 03:14 :


(...)
Je cherche un moyen simple d'injecter ces données dans le Palm Desktop
(et dans le Palm lui-même), les utilisateurs aimant bien cette
application.

Les tâches gérées par mon application doivent se trouver sur le Palm
et sur le Palm Desktop. Les taches créées et gérées par le Palm ou le
Palm Desktop coexisteront au sein de ces applications avec celles
provenant de mon application, mais les tâches modifiées dans le Palm
ou le Palm Desktop n'auront pas à se synchroniser



Mauvaise idée.



Je ne sais pas si ta réflexion concerne mon 1er paragraphe ou le second.
Alors, je vais essayer de clarifier mon propos.

Mon application est un plug-in à un logiciel de messagerie (Pegasus
Mail). Elle permet, lorsque qu'un e-mail est reçu, ou envoyé, de stocker
la référence à cet e-mail dans la base de données MySQL et d'y associer
une action à effectuer (encodée dans cette même base également).

- que les utilisateurs sont habitués à Palm Desktop et veulent continuer
à l'utiliser,

- mon application va leur permettre simplement d'ajouter une tâche
facilement sans quitter le logiciel de messagerie,

- ils pourront retrouver leur liste de tâches sur le Todo du Palm Desktp
et le synchroniser sur leur Palm pour l'emporter avec eux.

Le mieux est de créer un conduit, d'autant que les
conduits vers les applications standards sont générés automatiquement.



Oui, j'y ai pensé.

Télécharge le CDK (Conduit Development Kit), gratuit à partir du site de
Palmsource.



J'ai expérimenté ceci http://delphi-conduits.sourceforge.net/ qui marche
pas mal et évite de se taper les 45 Mo du CDK (que j'ai quand même finit
par télécharger pour y trouver plus de docs et des exemples).

Le problème avec le conduit, c'est que le conduit pour le Todo va
nécessairement prendre la place du conduit entre le Palm et
l'application Todo du Palm Desktop. En bref, mon application se
synchronisera seulement avec le Palm et les utilisateurs du Palm Desktop
ne verront pas le Todo du Palm Desktop se mettre à jour.

Ce n'est pas trop ce que je veux, car je ne veux par réinventer la roue,
le Palm Desktop étant un outil intégré massivement utilisé, avec de
jolies fonctions de recherche, d'affichage, d'impression, etc.

C'est pourquoi j'ai pensé qu'en modifiant directement le todo.dat, le
Palm Desktop se trouvera alimenté, lequel alimentera le Palm avec le
conduit habituel.

J'ai trouvé cette doc sur le format du todo.dat :

http://www.geocities.com/Heartland/Acres/3216/palmrecs.htm

Je vais expérimenter un peu.

Il y a deux inconvénients (au moins) :

- la spécification du format est du reverse engineering du format
todo.dat, non documenté par Palm, qui peut varier d'une version à une
autre de Palm Desktop. Mais cet inconvénient est réduit si tous les
utilisateurs utilisent la même version de Palm Desktop,

- l'application Palm Desktop doit être fermée lorsqu'on veut attaquer
directement le fichier todo.dat. Mon programme peut faire celà
automatiquement en voyant un message de fermeture à la fenêtre du Palm
Desktop.

S'il y a une autre façon de faire qu'une application tierce alimente le
Palm Desktop et le Palm, je suis intéressé de la connaître.

En fait, idéalement, il me faudrait le code source du conduit utilisé
par le Palm Desktop, pour le modifier de façon à ce que le Palm Desktop
se synchronise avec mon application d'abord, puis avec le Palm. Je n'ai
vu çà nulle part :(
Avatar
Dota
Le 06/10/2006 00:30, Patrick Vuichard a écrit :

(...)

Tu n'es pas obligé de remplacer le conduit : tu peux faire un conduit
avec un autre creator ID qui lira tes données et se basera sur le
conduit Todo pour les écrire dans la base. L'inconvénient, c'est que les
nouvelles taches ne seront intégrées que lors de la synchro...



Hmm, je ne savais pas que l'on pouvait faire celà. Je pensais que le
HotSync Manager ne permettait d'avoir qu'un conduit par application Palm
et que le Creator ID servait justement à lui indiquer de quelle
application Palm il s'agissait.

J'ai du mal à comprendre aussi comment HotSync Manager se débrouille
pour affecter le conduit de MonApp au Todo du Palm, et comment lorsque
la synchronisation a lieu, il gère le chaînage des deux conduits, c'est
à dire du conduit MonApp->PalmTodo et du conduit standard
PalmTodo<->PalmDesktop.

(...)

Mais bon, il est vrai que, dans ton cas, attaquer directement la base
peut être plus pratique. Attention à vérifier non seulement que le
desktop est fermer mais aussi qu'il n'y a pas de synchro en cours.



Effectivement, je n'avais pas pensé à la synchro en cours. Sais-tu
comment peut-on détecter si une synchro est en cours ?


Merci infiniment de ton aide, qui m'est très précieuse :)