David Pédehourcq (neo.51) Blog

Blog de David Pedehourcq

Home Contact Syndicate this Site (RSS 2.0) Syndicate this Site (Atom) Login
  36 Posts :: 0 Stories :: 9 Comments :: 0 Trackbacks

Archives

Message Categories

J'ais fais une petit applis VB.NET, rien de plus simple, on pourrait même dire un cas d'école, une applis VB.NET avec un chtit formulaire, un bouton pour valider. Récupération des données sur un dataset typé, qui servait de source à l'état.

Je vous passe les heures de galère pour bien caler la présentation de mon état, et j'arrive au moment fatidique : le déploiement !!!

Quand on a VS.NET 2003, le déploiement n'est, en principe, qu'une simple formalité. Surtout sur des projets aussi simples. On crée un projet setup, on colle le projet VB.NET en output, VS.NET détecte les dépendances, génère le setup et c'est fini... en théorie oui, mais il s'avère qu'avec des états crystal reports c'est pas aussi simple ;p

Mon premier setup :
Je crée un projet setup, je colle le projet VB.NET en output, VS.NET détecte les dépendances à mes assemblies, m'ajoute un module de fusion "Crystal_managed2003.msm", je génère le setup.
Je fais un premier test sur une machinne équipé de VS.NET, aucuns problèmes.
Je télécharge boostraper pour ajouter MDAC et le .NET framewok au setup et me voilà parti pour un nouveau test sur une machine "quelconque"...

Mon deuxième setup :
Donc avec ce deuxième setup je teste sur une machine sans VS.NET installé, sans rien installé à part win 2000 et le sp.

Et là ... c'est le drame !!!

Même pas ma form qui s'affiche, direct je prends

---------------------------
etats.exe - Common Language Runtime Debugging Services
---------------------------
Application has generated an exception that could not be handled.

Process id=0x574 (1396), Thread id=0x1dc (476).

Click OK to terminate the application.
Click CANCEL to debug the application.
---------------------------
OK Annuler
---------------------------

avec un message comme ça, le debug c'est pas gagné :-/

Alors, ce que je fais, je regarde les assemblies qui se chargent au démarrage de mon applis, et là je m'aperçois qu'il semble qu'il me manque : crdb_adoplus.dll
Qui devrait se trouver dans : C:\Program Files\Fichiers communs\Crystal Decisions\1.0\Bin\

Je cherche un peu partout, msdn, le site http://www.businessobjects.com/ et mon amis google, je m'aperçois que cette dll peut s'installer à l'aide du module de fusion "Crystal_Database_Access2003.msm"

Donc je mets le module de fusion, je build et je reteste.

Troisième setup
Toujours le même problème ... je me décide donc à mettre une msgbox au tout début de mon initialize componment pour voir si l'applis se lançait ou plantait avant...
L'applis se lançait bien, et en cherchant un peu je m'aperçois que dans l'initialisation des composants, dans le code généré par VS.NET, l'initialisation de mon état levait une exception...
Je fais un msgbox sur l'exeption levé et je tombe sur :

---------------------------
etats
---------------------------
Cannot find KeycodeV2.dll, or invalid keycode. , CrystalDecisions.CrystalReports.Engine, at .F(String _ , EngineExceptionErrorID _
) at .B(String __, Int32 __) at CrystalDecisions.CrystalReports.Engine.ReportDocument.;() at CrystalDecisions.CrystalReports.Engine.ReportDocument.InternalInit() at CrystalDecisions.CrystalReports.Engine.ReportDocument..ctor() at CrystalDecisions.CrystalReports.Engine.ReportClass..ctor() at etats.Volume..ctor() at etats.SynReport.InitializeComponent()
---------------------------
OK
---------------------------

Petite recherche sur google, et là je tombe carrément sur le c.. !!!

En fait il faut aussi inclure "Crystal_regwiz2003.msm" (si vous avez bien compté ça fait 2 dépendances que VS.NET n'a pas détecté). Mais c'est pas tout, il faut enregistrer Crystal Report, ou comment perde une heure pour attendre un numéro de série qui arrive par mail, et qui semble être le même pour tout les utilisateurs de VS.NET.

Et c'est pas tout, ensuite il faut rentrer le numéro de série dans le champ ID, dans les propriété du modume de fusion, en développant "Merge Module property" (trés intuitif non !!!!).

Si vous ne faites pas ça, VS.NET build le setup sans même un warning, pas un méssage que dalle, et à l'execution de l'applis Crystal Report vous balance direct une exception !!!

Bref une journée de perdue, pas mal sur les nerfs, mais heureusement il fait un temps de folie et une petite heure à faire bronzette à la plage ça vous ressource un homme ;)))

posted on mardi 16 mars 2004 15:38

Feedback

# re: Comment perdre une journée à déployer un état Crystal Report !!! 16/03/2004 22:51 Fabrice
Pourquoi utiliser Crystal Reports ?!?

# re: Comment perdre une journée à déployer un état Crystal Report !!! 17/03/2004 10:12 david P
Spécifications du service informatique de mes clients :'(

Je m'arrette là sinon je vais m'énnerver...

# re: Comment perdre une journée à déployer un état Crystal Report !!! 27/04/2004 16:33 Nicolas
Eh bien perso j'essaye en ASP.NET c'est la galère totale, les dépendances restent bien chez elles au chaud , à croire qu'il faut installer vs studio sur le serveur ! (win 2003 web edition)
6 ans de galère avec crystal depuis la version 4. compatissez !! :-))

# re: Comment perdre une journée à déployer un état Crystal Report !!! 14/05/2004 16:51 Shuret
Après une recherche sur Google, je suis tombé sur ton blog. Je galère avec CrystalReports et j'ai la même erreur que toi, concernant le fichier keycodev2.dll. J'ai fait comme tu as indiqué, mais je ne sais pas comment rentrer le n° de série dans le champ ID, dans les propriétés du module de fusion, en développant "Merge Module property" o_O J'ai bien les MergeModuleProperties, mais pas de champ ID (y'a bien un champ LanguagesIds mais ça doit pas être ça...). Bref, avant de me faire interner tellement ça me prend la tête, t'as pas une tite idée pour que je m'en sorte ?

PS : c'est moi ou Crystal c'est vraiment de la merde en barre ?

# re: Comment perdre une journée à déployer un état Crystal Report !!! 14/09/2004 14:57 Julien A
Il faut creer un report et à l'intérieur du report, tu cliques droit et il y a l'option Modifier/Saisie de la licence.

# Cannot find KeycodeV2.dll, or invalid keycode 29/10/2004 16:56 Leye
Bonjours, moi aussi j'ai le même problème (Cannot find KeycodeV2.dll, or invalid keycode ) : j'ai une application ASP.net c# qui s'execute sur serveur IIS distant et j'ai déployé le projet comme suit :


Tout d'abord j'ai crée un projet de déploiement


Click droit sur la solution dans l'explorateur de solution
"Ajouter"
"Nouveau Projet"
"Projet de configuration"

Maintenant, nous allons ajouter le projet CsharpEtats en sortie principale du projet. Nous ne rentrerons pas ici dans les détails de la création d'un setup avec Visual Studio .NET. Ce sujet sera l'occasion d'un autre tutoriel. Je cherche juste à vous montrer une problématique récurrente du déploiement d'états Crystal Reports.



Click droit sur le projet dans l'explorateur de solution
"Ajouter"
"Sortie du projet"
"Sortie Principale"
ok

A ce stade, on a créé un projet de déploiement "standard" qui permet de déployer un application . Le problème est que notre application utilise des composants Crystal Reports qu'il faudra enregistrer sur le poste client cible. Visual studio .NET détecte une dépendance et ajoute le module de fusion "Crystal_Database_Access2003.msm" mais ce n'est pas les seules dépendances que notre projet a avec Crystal Reports. Il faut donc ajouter des modules de fusion à la main.



Click droit
Ajouter
Modules de fusion
ajouter les modules de fusions suivants : "Crystal_regwiz2003.msm", "Crystal_managed2003.msm","Crystal_managed2003_fra.msm","VC_USER_CRT_71_RTL_X86_---.msm","VC_USER_STL_71_RTL_X86_---.msm".



Que se passe t-il ,




# re: Comment perdre une journée à déployer un état Crystal Report !!! 29/10/2004 17:13 DavidP
Il manque une étape :

"Ensuite, il faut sélectionner "Crystal_regwiz2003.msm" aller dans propriété, développer "Merge Module Properties" et saisir votre licence key que vous avez eue après avoir enregistré Crystal Reports (gratuit)."

http://neo.developpez.com/tutos/CR/vbnet/#L5

si le composant n'est pas enregistré crystal report fera planter votre application en levant une vilaine exception, il est sans pitié ;)

# re: Comment perdre une journée à déployer un état Crystal Report !!! 02/11/2004 10:10 Leye
J'ai saisi la licence key qui m'est envoyée par mail dans Merge Module Properties mais ça ne marche toujours pas; j'ai la même problème :Cannot find KeycodeV2.dll, or invalid keycode.

Merci de votre aide

# re: Comment perdre une journée à déployer un état Crystal Report !!! 18/01/2005 15:16 Deaperblue
j'ai une appli VB6.0 avec du crystal 7.0 (no comment) j'aimerai savoir quelles sont les dépendances exacts car le modele de deploiment fait tres mal son boulo :(

ps: existe il un autre moyen pour creer un modele de deploiment d'un projet VB ?

# re: Comment perdre une journée à déployer un état Crystal Report !!! 21/09/2005 19:18 Philippe
Salut,
J'espère que depuis le temps vous avez trouvé la solution, mais pour les autres, voici un site qui explique en détail la manip.
http://www.supinfo-projects.com/fr/2005/crystal_reports_net_fr/4/

Bon courage.

# re: Comment perdre une journée à déployer un état Crystal Report !!! 03/07/2006 17:49 FAYE mamadou
Vous pouvez aussi trouver une solution à l'adresse suivante:

http://neo.developpez.com/tutos/cr/vbnet/


faye?mamadou@gmail.com

# re: Comment perdre une journée à déployer un état Crystal Report !!! 23/10/2006 17:43 kadi
bonjour a ts,
moi aussi j ai un probleme avec crystal report.
j ai testé mon application qui utilise crystal report sur un poste distant mais il affiche "impossible d'ouvrir la page". jai lu ensuite k il faut ke je crée un projet de deploiment. et cé ce ke j ai tenter de faire.mais quand je fais :
"Ajouter"
"Sortie du projet"
je ne trouve pas sortie principal. et quand je fais ok il ne detecte pas de dependences.aussi mon dossier Merge Module ne contient aucun des .msm liés a crystal report.
si vs pouvez me donner un coup de main

# re: Comment perdre une journée à déployer un état Crystal Report !!! 23/10/2006 17:58 kadi
jai oublié de dire ke mon application est une app web et non windows.et ke au depart j ai rien installé qui soit directement lié a crystal report

# re: Comment perdre une journée à déployer un état Crystal Report !!! 21/05/2008 22:33 Komedi
Komedi - Komik - Mizah - Fikra, Fikralar, Fikra oku, Karikatür, Komik Karikatürler, Animasyon,
Komik Animasyonlar, Karikatür, Komik Karikatürler, Oyun, Komik Oyunlar,Video, Video izle, Komik Videolar,
Resim, Komik Resimler, Hikaye oku, Hikayeler http://www.komedi.gen.tr Komik Mizah Sitesi..
Sohbet, Chat, http://www.sohbetkalp.net Muhabbet http://www.chatcix.com Chatcix Sohbet odalari..
Mynet Sohbet, Mynet Chat http://www.mynetci.com Mynet Sohbet Odalari..
Fikra, Fikralar, Fikra oku, Hikayeler, Resimler http://www.fikraturk.net Fikra sitesi..

Post Feedback

Title:
Name:
Url:
Comments: 
Enter the code you see: