2010-07-21 6 views
1

J'ai développé une application de bureau en utilisant MFC, qui a les options FILE, EDIT, VIEW et HELP, avec un stylo pour écrire sur le document ouvert qui enregistre en tant que test1. Il me permet d'ouvrir seulement test1 ou test2 etc. En dehors de ces types de fichiers, si je veux ouvrir PPT ou PDF, comment puis-je le faire?Application MFC dans VC++

Le code pour ouvrir un fichier est générée automatiquement par Visual Studio 2008. Maintenant, je dois modifier le même.

+0

"avec un stylo" ??? s'il vous plaît expliquer, probable perdu dans la traduction. Je pense que vous devez d'abord améliorer vos compétences en MFC/C++; la seconde est de vérifier ce qui est nécessaire pour ouvrir ce format de fichier, il pourrait ne pas être aussi simple que ça en a l'air (je n'ai jamais eu à y penser). Bonne chance. Max. – Max

Répondre

0

C'est quelque chose que Microsoft ne fournit pas de Wizards à faire (du moins pas directement). L'idée de base est que vous devez créer et ajouter un nouveau document et afficher des classes pour les nouveaux types de fichiers. Vous devez ensuite ajouter des chaînes de document à la table de chaînes pour décrire l'association entre les extensions de fichier et les classes document/vue. Ensuite, vous enregistrez chaque paire document/vue dans la classe d'application en utilisant les chaînes que vous avez ajoutées à la table de chaînes. De loin la manière la plus facile de faire ceci est de générer le document, la vue et la chaîne dans une autre application (autrement jetable), récupérez le document, la vue, la chaîne d'enregistrement et le code d'enregistrement de cette application et mettez-les dans votre application . Générez ensuite une autre application jetable pour l'extension de fichier suivante.

Cela vous donne un doc/vue squelette pour chaque extension de fichier. De là, c'est à vous d'écrire le code pour ouvrir, afficher, éditer, enregistrer, etc., ce type de fichier. Cela ne va pas être trivial pour PDF ou (en particulier) PPT - sauf si vous "déléguez" et utilisez quelque chose comme un contrôle ActiveX pour faire le vrai travail. Si vous voulez faire cela, le contrôle Adobe ActiveX fonctionne raisonnablement bien (capacités quelque peu limitées, mais il apparaîtra essentiellement la même chose qu'un PDF dans un navigateur Web). Je ne me souviens pas si MS fournit un contrôle ActiveX pour l'affichage des fichiers PPT. Il existe une visionneuse PPT gratuite, mais si la mémoire est utilisée, c'est un exécutable plutôt qu'un contrôle.

Questions connexes