2010-07-26 10 views
1

J'essaie de résoudre la conversion de doc en pdf comme décrit here.installer (et utiliser) un composant COM dans l'application Delphi que je lance l'exe

Puisqu'il n'y a pas de composant Delphi (avec le code source) qui crée un pdf à partir de doc, je me demandais comment il est possible de "enregistrer le COM au moment de l'exécution".

Je n'utilise pas un installateur, je viens de déployer l'exe. L'idée était donc simplement de mettre la DLL ActiveX dans les ressources et de l'enregistrer au démarrage du programme (ou la première fois que je dois l'utiliser). Quoi qu'il en soit, cela donnera des problèmes dans Vista ou 7 ... Quelqu'un peut-il suggérer comment cela peut être accompli? Gardez à l'esprit que je veux garder deployemnt super facile = remplacer un exe.

COMMENTAIRE: Bien sûr S'il y avait un composant Delphi pour ce faire, je n'aurais aucun problème puisque cette fonctionnalité serait déjà là dans l'exe.

+0

Est-ce que cet article MS aide à tous? http://support.microsoft.com/kb/146219 –

+1

Quel est le problème avec un programme d'installation? Il existe plusieurs bonnes raisons d'empêcher un utilisateur sans les privilèges appropriés d'enregistrer un serveur COM. Vous pouvez également exiger que votre application soit exécutée avec des privilèges élevés - ne pleure pas alors "Windows n'est pas sécurisé !!!" –

+0

avez-vous besoin de prendre un document et d'en créer un pdf? avez-vous regardé pdfcreator? cela fonctionne comme une imprimante mais ses résultats sont un document pdf qui est sauvegardé. – Leslie

Répondre

1

Habituellement serveurs EXE OLE est livré avec commutateur de ligne de commande standard/RegServer - essayez de démarrer exe avec celui-ci

+0

Pouvez-vous expliquer cela mieux? Je ne suis pas un expert en la matière une fois que j'ai utilisé OLE Object pour me connecter à MS Outlook, mais dans ce cas Outlook était déjà là, déjà installé, je n'avais rien à installer. – LaBracca

+0

Essayez simplement de démarrer vous EXE à partir de cmd avec la clé explicite: OleServer.exe/RegServer – Dewfy

1

Considérerez-vous un composant commercial? Si c'est le cas, le BoxedApp SDK vous permettra de faire exactement ce que vous décrivez dans votre question (et plus), sans avoir à vous soucier de l'UAC ou de quoi que ce soit d'autre. Cela fonctionne très bien avec Delphi et .NET.

Il est livré avec un exemple Delphi sur la façon d'exécuter un film Flash en regroupant le Flash OCX et en l'enregistrant au moment de l'exécution.