Mit C Zugriff auf Office-Programme?



  • Guten Morgen zusammen,

    ich möchte etwas in C programmieren, was aus Outlook heraus per One-Click Ordner erstellt und Anhänge abspeichert, vergleicht und Excel Tabellen füllt....

    Das Zauberwort hier heißt wohl MFC, ODER?

    Tja, ich weiß was es ist, aber nicht, was mir das wie nutzen soll.

    Bin noch recht frisch was C angeht, aber nur an großen Dingen kann man ja bekanntlich wachsen 😉

    Für Hilfestellungen jeder Art, und seien es nur die kleinsten Gedankenanstösse, wäre ich echt dankbar!

    Grüße

    Sascha



  • Die Zauberworte heissen ActiveX, OLE, COM. Das ganz geht zwar zumindest als
    Client auch in C, C++ ist aber zu bevorzugen. Für einen Anfänger halte ich den
    Versuch C++/C + Windows(Prog.) + COM lernen für wahrhaft mörderisch.
    Ich vermute mal das Ergebnis wird Frustration hoch 2 sein.



  • O, das ist Mist.

    Muss dazu sagen, dass ich Azubi im 1. Lehrjahr bin und mein Chef halt meinte, dass das ne interessante wäre...
    C mache ich seit einem Jahr, C++ noch nie gesehen.

    Dann werd ich mal googlen, und mir Argumente raussuchen, die ich meinem Ausbilder vorlegen kann, damit er begreift, dass ich das nicht können kann.

    Danke schon mal für den Hinweis!!



  • Ja meint er Programme oder Dateien?

    Mit Excel Tabellen z.B. zu arbeiten wäre doch ganz ok. 👍

    Ich bin übrigens auch im ersten Lehrjahr, mache die slebe Ausbildung, und darf auch alle möglchen Anwendungen programmieren.

    mfg hohesC



  • Also wie gesagt, aus Outlook heraus Anhänge automatisch abspeichern, und den Inhalt einer Excel Datei in eine andere Datei an eine bestimmte Zelle senden.

    Mein C-Programm soll ihm also manuelle Klicks ersparen.

    Der erste Schritt ist zunächst mal:

    Wie kann ein C-Programm überprüfen, ob auf dem Rechner das Programm Microsoft Outlook geöffnet ist?

    Das weiß ich ja nicht mals....



  • Ich würde sagen mit C würde das mit dem Outlook schwierig bis unlösbar, du solltest dir da mal die möglichkeiten mit Makros anschauen!

    Das mit Excel ist da schon eher denk bar, du solltest mal googeln!

    mfg hohesC



  • Also mit VBA (Makros) wäre das alles auch kein (großes) Problem.
    Aber es MUSS C sein...

    Und glaub mir, google ist sowas von mein Freund geworden 🙂



  • dann sag deinem Ausbilder das er dir helfen soll(was er machen muss)!
    warsch. will er dich nur beschäftigen :p 😃

    mfg hohesC



  • http://support.microsoft.com/?scid=kb%3Ben-us%3B196776&x=14&y=10

    There are three basic ways you can use Automation: MFC, #import, and C/C++:
    [...]
    3. C/C++ Automation is much more difficult, but sometimes necessary to avoid overhead with MFC, or problems with #import. Basically, you work with such APIs as CoCreateInstance(), and COM interfaces such as IDispatch and IUnknown.

    It is important to note that there are some slight differences between Automation from C++ compared to plain C, because COM was designed around the C++ class.

    Das mit C machen zu wollen ist schwachsinnig, aber möglich
    -> http://support.microsoft.com/kb/181473/EN-US/



  • A ja....sieht ja recht brutal aus....



  • da kann ich aus eigener Erfahrung sagen, dass Microsoft (leider) die Strategie zu fahren scheint, dass man für Automatisierung innerhalb von Windows Applikationen am besten mit VBA bedient ist. Mit C++ kann das schon manchmal ziemlich anstrengend werden. Gerade so etwas wie das Automnatisierte Abspeichern von Dateianhängen in OL kann man mittels VBA in kurzer Zeit auf die Beine Stellen, die C++ COM/OLE Programmierung ist wiederum ein Kapitel für sich, welches wie ich finde mehr Einarbeitungszeit braucht, als sich "mal eben" VBA anzueigenen.

    Ich würde Deinem Chef einfach vorrechnen, wie lange Du geschätzt bräuchtest, um die Aufgabe mittels C zu erledigen, wovon ich extremst abraten würde und wie lange es mit VBA+ Einarbeitungszeit (wenn Du in C einigermassen fit bist, kannste Dir das an nem ruhigen Wochenende beibringen) dauern würde. Mit C zu arbeiten ist in diesem Zusammenhang arg unproduktiv und das sollte er einsehen.


Anmelden zum Antworten