Je cherche à pouvoir "controler" une animation power point. Microsoft ne fournit pas d'ocx permettant d'encapsuler un ppt dans une application... J'ai bien trouvé des ocx payant, mais qui, en réalité, utilise l'automation pour afficher le power point.
J'ai également pensé à utilisé le pptViewer, mais il affiche un splashscreen, et je voudrais éviter.

Je souhaite donc utiliser automation pour initialiser Powerpoint et lancer l'animation. Je pense que c'est tout a fait faisable.

J'ai récupéré quelques sources sur le net, qui montre comment utiliser l'automation avec office, et particulierement avec powerpoint.

J'ai cependant toujours les meme erreurs :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Erreur	1	Le type 'Microsoft.Office.Core.MsoTriState' est défini dans un assembly qui n'est pas référencé. Vous devez ajouter une référence à l'assembly 'office, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c'.
et aussi

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Erreur	5	Argument '3' : impossible de convertir de 'Microsoft.Office.Core.MsoTriState [c:\Documents and Settings\aurelien\Mes documents\ST50\developpement\Recherche\DotNET\ppt\MSPPTApp\obj\Debug\Interop.Microsoft.Office.Core.dll]' en 'Microsoft.Office.Core.MsoTriState []'	C:\Documents and Settings\aurelien\Mes documents\ST50\developpement\Recherche\DotNET\ppt\MSPPTApp\PPTAuto.cs	39
En fait, il me sort des erreurs dès que j'utilise des types enum du genre Microsoft.Office.Core.Mso*

Voici le code que j'essaie d'utiliser :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
String strTemplate;
strTemplate = "C:\\Program Files\\Microsoft Office\\Templates\\Presentation Designs\\Glass Layers.pot";
//Create a new presentation based on a template.
objApp = new PowerPoint.Application();
objApp.Visible = Microsoft.Office.Core.MsoTriState.msoCTrue;
objPresSet = objApp.Presentations;
objPres = objPresSet.Open(strTemplate, 
(MsoTriState)0, MsoTriState.msoTrue, MsoTriState.msoTrue);
 
objSlides = objPres.Slides;
// Adding a slide 
objSlide = objSlides.Add(1,PowerPoint.PpSlideLayout.ppLayoutTitleOnly);		objSlide.Shapes.AddTextbox(MsoTextOrientation.msoTextOrientationHorizontal,100,100,500,80);
C'est ma 1er appli en .NET il y a encore des messages d'erreur que j'ai du mal à décrypter :p

Si vous avez une piste...

Aurélien