OVH Cloud OVH Cloud

Déploiement avec composant

11 réponses
Avatar
Gloops
Bonjour tout le monde,

J'ai développé une application qui fait appel à l'Edanmo's Task
Scheduler, un composant qu'on trouve sur Internet avec ses sources en VB.

Elle fonctionne bien, et il semblerait que quelqu'un soit intéressé.

Je m'occupe donc de créer un empaquetage.

Je crois qu'il y a des trucs à bouquiner, avant ?

L'assistant d'empaquetage ne trouve pas les références du Task
Scheduler. Comme c'est un composant, il a été compilé dans un projet,
puis appelé en référence dans un autre. C'est celui-ci que je cherche à
empaqueter, et l'assistant bute sur les références appelées par le
premier, en disant qu'il n'en a pas connaissance. J'ai ajouté
manuellement les modules de classe du Task Scheduler, mais j'ai un
doute. Et les modules, faut-il les mettre aussi ?

La dernière fois que j'ai posé la question, dans l'absolu, de savoir
comment être sûr de tout mettre, on m'a dit "il faut essayer sur une
autre machine". Ben oui, seulement je n'en ai guère qu'une, et j'espère
juste pouvoir en acheter une avant que celle-ci me claque dans les
pattes, ce qui n'est hélas pas encore sûr, à la cadence où ça va.

Alors les conseils judicieux seront bienvenus ...

10 réponses

1 2
Avatar
Christian Hugoud
Tu peux lister tous les composants à déployer grâce à l'assistant : il y a
une option qui ne fabrique pas le déploiement, mais une liste de
dépendances. C"est plus sur que de tester sur une autre machine.

Christian

"Gloops" a écrit dans le message de news:
4372a7f0$0$6662$
Bonjour tout le monde,

J'ai développé une application qui fait appel à l'Edanmo's Task Scheduler,
un composant qu'on trouve sur Internet avec ses sources en VB.

Elle fonctionne bien, et il semblerait que quelqu'un soit intéressé.

Je m'occupe donc de créer un empaquetage.

Je crois qu'il y a des trucs à bouquiner, avant ?

L'assistant d'empaquetage ne trouve pas les références du Task Scheduler.
Comme c'est un composant, il a été compilé dans un projet, puis appelé en
référence dans un autre. C'est celui-ci que je cherche à empaqueter, et
l'assistant bute sur les références appelées par le premier, en disant
qu'il n'en a pas connaissance. J'ai ajouté manuellement les modules de
classe du Task Scheduler, mais j'ai un doute. Et les modules, faut-il les
mettre aussi ?

La dernière fois que j'ai posé la question, dans l'absolu, de savoir
comment être sûr de tout mettre, on m'a dit "il faut essayer sur une autre
machine". Ben oui, seulement je n'en ai guère qu'une, et j'espère juste
pouvoir en acheter une avant que celle-ci me claque dans les pattes, ce
qui n'est hélas pas encore sûr, à la cadence où ça va.

Alors les conseils judicieux seront bienvenus ...



Avatar
Gloops
Si je ne m'abuse, au début du déploiement on commence par avoir une
liste des dépendances, avec une case devant chacune, pour dire
lesquelles on inclut.

Seulement là, j'avais aussi un message me signalant que l'assistant ne
pouvait pas détecter les dépendances de telle dépendance. Et tant que je
ne dis pas amen je n'ai pas d'empaquetage du tout.

L'option sans déploiement, c'est avant la liste des scripts ? Au fait
sur la première boîte de dialogue, c'est bien sur empaquetage, que je
clique ?
Quel est le titre de la rubrique d'aide qui me permettra d'en savoir
plus ? J'avoue que je suis passé devant sans voir.


(Tester sur une autre machine qui n'a au départ pas le runtime VB,
logiquement ça doit déjà donner un certain niveau de fiabilité, non ?
Comme disait un pote "y a mieux mais c'est plus cher". Après logiquement
il faudrait aussi tester sur des machines qui ont diverses versions de
runtime, et selon le programme voir si la présence de tel équipement
peut jouer un rôle ...)
_______________________________________________
Christian Hugoud a écrit, le 10/11/2005 07:03 :
Tu peux lister tous les composants à déployer grâce à l'assistant : il y a
une option qui ne fabrique pas le déploiement, mais une liste de
dépendances. C"est plus sur que de tester sur une autre machine.

Christian


Avatar
Christian Hugoud
Hi,

Si l'outil n'arrive pas à détecter les dépendances des dépendances, il faut
consulter la doc technique de la dépendance. Je ne vois pas d'autre
solution, à moins de faire un test avec une bécane fraîchement installée (en
termes d'OS) et au strict minimum requis.

(Tester sur une autre machine qui n'a au départ pas le runtime VB,
logiquement ça doit déjà donner un certain niveau de fiabilité, non ?


Oui et non. Si la bécane est totalement vierge, oui, et encore, cela dépend
de la version de l'OS. Il faudrait prendre dans certains cas une ancienne
version, et dans d'autres (par exemple pour des applis développées avec des
anciennes versions du langage) une des dernière versions.
Sinon, elle peut être par exemple équipée avec un soft qui a déjà déployé
des dépendances (style MS Word, MS ACCESS avec les versions du Jet, etc.).
Dans ce cas c'est beaucoup plus délicat.

Je ne peux pas t'être d'une grande aide concernant l'assistant car je ne
l'utilise pas.

Christian


"Gloops" a écrit dans le message de news:
43732b04$0$19717$
Si je ne m'abuse, au début du déploiement on commence par avoir une liste
des dépendances, avec une case devant chacune, pour dire lesquelles on
inclut.

Seulement là, j'avais aussi un message me signalant que l'assistant ne
pouvait pas détecter les dépendances de telle dépendance. Et tant que je
ne dis pas amen je n'ai pas d'empaquetage du tout.

L'option sans déploiement, c'est avant la liste des scripts ? Au fait sur
la première boîte de dialogue, c'est bien sur empaquetage, que je clique ?
Quel est le titre de la rubrique d'aide qui me permettra d'en savoir plus
? J'avoue que je suis passé devant sans voir.


(Tester sur une autre machine qui n'a au départ pas le runtime VB,
logiquement ça doit déjà donner un certain niveau de fiabilité, non ?
Comme disait un pote "y a mieux mais c'est plus cher". Après logiquement
il faudrait aussi tester sur des machines qui ont diverses versions de
runtime, et selon le programme voir si la présence de tel équipement peut
jouer un rôle ...)
_______________________________________________
Christian Hugoud a écrit, le 10/11/2005 07:03 :
Tu peux lister tous les composants à déployer grâce à l'assistant : il y
a une option qui ne fabrique pas le déploiement, mais une liste de
dépendances. C"est plus sur que de tester sur une autre machine.

Christian





Avatar
Gloops
ça serait peut-être plus clair en donnant des infos plus détaillées.

Le gestionnaire de tâches est disponible là
http://www.mvps.org/emorcillo/en/code/vb6/index.shtml
http://www.mvps.org/emorcillo/download/vb6/schedule.zip

Une fois compilé il donne une dll :
tskschd.dll

L'assistant d'empaquetage pour mon projet Volume inclut cette DLL, mais
il précise qu'il n'en connaît pas les références.

Dans le projet Schedule qui sert à créer tskschd.dll il y a des modules
de classe, il me semble que ça n'a rien à faire sur la machine de
l'utilisateur ?

Le projet Schedule appelle en référence OLELIB.TLB, Edanmo's OLE
interfaces & functions v. 1.81

Je me demande si je dois aussi joindre ce fichier, et si une fois que
c'est fait je suis sûr qu'il ne fait pas appel à encore un autre, de la
même manière.

Le programme Dependancy Walker, de Steve P. Miller, ne me renseigne pas
vraiment, puisqu'il ne mentionne carrément pas tskschd.dll, j'imagine
que celle-ci n'apparaît dans les dépendances qu'au moment où on crée une
tâche ? Et puis c'est vite fait ...

Le message que m'a affiché l'assistant d'empaquetage et déploiement
(connaît pas les références de tskschd.dll) résulte-t-il d'une erreur de
ma part ?
Avatar
Gloops
Christian Hugoud a écrit, le 10/11/2005 16:32 :

Hi,

Si l'outil n'arrive pas à détecter les dépendances des dépendances, il faut
consulter la doc technique de la dépendance. Je ne vois pas d'autre
solution, à moins de faire un test avec une bécane fraîchement installée (en
termes d'OS) et au strict minimum requis.



OK, si personne n'a rien à ajouter je vais essayer de contacter le Sieur
Morcillo, à supposer qu'il ait un moment à me consacrer ...

Je n'ai rien vu sur le site, peut-être dans les commentaires dans le
code, pour commencer ...

Merci de t'être penché sur le problème.
Avatar
Gloops
Petit-à-petit la question commence à se décanter.

Dans le répertoire du projet Schedule, il y a un sous-répertoire Test.
Dans ce sous-répertoire se trouve un gestionnaire de tâches, basé
d'ailleurs sur un projet de test fourni au départ par l'auteur de
tskschd.dll.

Je viens de créer un empaquetage pour ce gestionnaire de tâches, sans
message d'erreur.

J'ai regardé les références, il y avait aussi STDOLE2.TLB (OLE Automation).

J'ai mis ça dans le projet Volume, et je n'ai plus de message d'erreur.

Je vais laisser mijoter un peu, puis reprendre à la base les docs sur le
développement de composants, apparemment il y a des points que j'ai dû
survoler un peu vite. D'ailleurs pour le moment je n'ai qu'utilisé des
composants tout prêts.

Avant ça, pour ce projet Volume, je vais m'attaquer à la question de
compléter le programme d'installation. C'est un truc où il ne faut pas
trop se louper, d'après ce que je crois savoir.
Avatar
VinceVg
As-tu bien enregistrer ce que tu veux déployer ?

"Gloops" a écrit :

Petit-à-petit la question commence à se décanter.

Dans le répertoire du projet Schedule, il y a un sous-répertoire Test.
Dans ce sous-répertoire se trouve un gestionnaire de tâches, basé
d'ailleurs sur un projet de test fourni au départ par l'auteur de
tskschd.dll.

Je viens de créer un empaquetage pour ce gestionnaire de tâches, sans
message d'erreur.

J'ai regardé les références, il y avait aussi STDOLE2.TLB (OLE Automation).

J'ai mis ça dans le projet Volume, et je n'ai plus de message d'erreur.

Je vais laisser mijoter un peu, puis reprendre à la base les docs sur le
développement de composants, apparemment il y a des points que j'ai dû
survoler un peu vite. D'ailleurs pour le moment je n'ai qu'utilisé des
composants tout prêts.

Avant ça, pour ce projet Volume, je vais m'attaquer à la question de
compléter le programme d'installation. C'est un truc où il ne faut pas
trop se louper, d'après ce que je crois savoir.





Avatar
Gloops
VinceVg a écrit, le 11/11/2005 12:01 :
As-tu bien enregistrer ce que tu veux déployer ?



ça s'exécute bien sur ma machine, si c'est ce que tu veux dire ...
Avatar
VinceVg
Oui mais ça met déjà arrivé et j'avais oublier d'enregistrer un ocx et donc
il ne le trouvait pas au déploiement.

"Gloops" a écrit :

VinceVg a écrit, le 11/11/2005 12:01 :
> As-tu bien enregistrer ce que tu veux déployer ?

ça s'exécute bien sur ma machine, si c'est ce que tu veux dire ...




Avatar
Gloops
Hum, tu crois ?
Comme la DLL n'était pas dans un répertoire système je me représente
qu'elle ne pouvait être reconnue qu'après avoir été enregistrée, mais
peut-être que je me trompe.

Ce sera une piste à creuser, merci.
______________________________________
VinceVg a écrit, le 11/11/2005 16:52 :
Oui mais ça met déjà arrivé et j'avais oublier d'enregistrer un ocx et donc
il ne le trouvait pas au déploiement.

"Gloops" a écrit :


VinceVg a écrit, le 11/11/2005 12:01 :

As-tu bien enregistrer ce que tu veux déployer ?



ça s'exécute bien sur ma machine, si c'est ce que tu veux dire ...






1 2