Πώς μπορείτε να χρησιμοποιήσετε μια βιβλιοθήκη τύπων για την αυτοματοποίηση του Office από τη Visual C++ .NET

Σύνοψη

Αυτό το άρθρο περιγράφει τον τρόπο για να δημιουργήσετε ένα έργο Visual C++ .NET που λειτουργεί ως ένα πελάτη αυτοματισμού για τις εφαρμογές που είναι Component Object Model (COM) συμβατό με. Το δείγμα σε αυτό το άρθρο χρησιμοποιεί Microsoft Foundation κλάσεις (MFC) με προγράμματα εξομοίωσης κλάσης για ένα στοιχείο του Office.

Περισσότερες πληροφορίες

Τα παρακάτω βήματα δείχνουν τον τρόπο δημιουργίας μιας απλής προγράμματος-πελάτη αυτοματισμού. Υπάρχουν τρία βασικά βήματα για τη διαδικασία αυτή:
  1. Η δημιουργία του προγράμματος-πελάτη αυτοματισμού.
  2. Προσθήκη κώδικα για την αυτοματοποίηση του Microsoft Excel.
  3. Εκτελέστε το πρόγραμμα-πελάτη αυτοματισμού.
Μπορείτε να χρησιμοποιήσετε το πρώτο βήμα, για τη Δημιουργία του προγράμματος-πελάτη αυτοματισμού, για να δημιουργήσετε ένα νέο πρόγραμμα-πελάτη αυτοματισμού, ανεξάρτητα από το διακομιστή αυτοματισμού που χρησιμοποιείτε. Το δεύτερο βήμα,
Προσθήκη κώδικα για να αυτοματοποιήσετε το Microsoft Excel, είναι συγκεκριμένη για τον Automation server.

Δημιουργία ενός προγράμματος-πελάτη αυτοματισμού

  1. Ξεκινήστε το Microsoft Visual Studio .NET. Στο μενού αρχείο , κάντε κλικ στην επιλογή Δημιουργίακαι, στη συνέχεια, κάντε κλικ στο έργο. Επιλέξτε Εφαρμογή MFC από τους τύπους έργα του Visual C++ και στη συνέχεια ονομάστε το έργο AutoProject.
  2. Όταν εμφανίζεται ο οδηγός εφαρμογής MFC, κάντε κλικ στην επιλογή Τύπος εφαρμογής, ορίστε τον τύπο εφαρμογής σε Παράθυρο διαλόγου με βάσηκαι, στη συνέχεια, κάντε κλικ στο κουμπί Τέλος.
  3. Τροποποιήστε το πλαίσιο διαλόγου IDD_AUTOPROJECT_DIALOG ως εξής:
    1. Καταργήστε το στοιχείο ελέγχου της ετικέτας (IDC_STATIC) και στο κουμπί Άκυρο (IDCANCEL).
    2. Για να αλλάξετε τον Κωδικό του κουμπιού OK για να "IDRUN" και τη λεζάντα "Εκτέλεση".
  4. Δημιουργήσετε προγράμματα εξομοίωσης κλάσης από τη βιβλιοθήκη τύπων για το διακομιστή αυτοματισμού ως εξής:
    1. Στην Εξερεύνηση λύσεων, κάντε δεξιό κλικ στο AutoProjectκαι, στη συνέχεια, κάντε κλικ στο κουμπί Προσθήκη κλάσης.
    2. Κάντε κλικ στο κουμπί Κλάση MFC από βιβλιοθήκη τύπωνκαι, στη συνέχεια, κάντε κλικ στο κουμπί Άνοιγμα.
    3. Κάντε κλικ στην επιλογή προσθέσετε μια κλάση από: μητρώου, και εντοπίστε τη βιβλιοθήκη Καταχωρημένος τύπος αρχείου για το διακομιστή αυτοματισμού.

      Αυτό το παράδειγμα, επιλέξτε "Microsoft Excel έκδοση 10.0 τύπο βιβλιοθήκης" για Microsoft ExcelXP ή "Microsoft Excel 9.0 βιβλιοθήκης τύπων" για το Microsoft Excel 2000.
    4. Επιλέξτε τις διασυνδέσεις που θέλετε από τη λίστα και, στη συνέχεια, κάντε κλικ στο κουμπί μεγαλύτερο από το σύμβολο (>) για να τα προσθέσετε στη λίστα των διασυνδέσεων, για την οποία MFC δημιουργεί προγράμματα εξομοίωσης. Επιλέξτε " Τέλος " όταν έχετε προσθέσει όλες τις διασυνδέσεις.

      Αυτό το παράδειγμα, χρειάζεστε μόνο το περιβάλλον εργασίας _Application .

      Σημαντικό Εάν υπάρχουν πολλές διασυνδέσεις στη βιβλιοθήκη τύπων που επιλέξατε, επιλέξτε μόνο τις διασυνδέσεις που θέλετε να χρησιμοποιήσετε, επειδή η MFC θα δημιουργήσει ένα αρχείο ξεχωριστή κεφαλίδα για κάθε επιλεγμένη διασύνδεση. Ελαχιστοποιώντας τις επιλογές περιβάλλοντος εργασίας σας, μπορείτε να αποφύγετε περιττή επιβάρυνση κατά τη δημιουργία αρχείων και την κατάρτιση.
  5. Για να φορτώσετε και να ενεργοποιήσετε τη βιβλιοθήκη υπηρεσίες COM της συνάρτησης CAutoProjectApp::InitInstance , προσθέστε τον ακόλουθο κώδικα:
    if(!AfxOleInit())  // Your addition starts here.{
    AfxMessageBox("Cannot initialize COM dll");
    return FALSE;
    // End of your addition.
    }

    AfxEnableControlContainer();

  6. Για να προσθέσετε μια οδηγία συμπερίληψης για κάθε αρχείο κεφαλίδας που δημιουργείται από τις διασυνδέσεις στη βιβλιοθήκη τύπων του διακομιστή αυτοματοποίησης. Προσθήκη των οδηγιών μετά τη δήλωση include για Stdafx.h στην κορυφή του AutoProjectDlg.cpp.

    Για αυτό το παράδειγμα, προσθέστε μια συμπερίληψη για το CApplication.h αρχείο κεφαλίδας που δημιουργείται για τη διασύνδεση _Application :
          #include "stdafx.h"      #include "CApplication.h"

Προσθήκη κώδικα για την αυτοματοποίηση του Microsoft Excel

Στο πλαίσιο διαλόγου " IDD_AUTOPROJECT_DIALOG ", κάντε δεξιό κλικ στο Εκτέλεσηκαι, στη συνέχεια, κάντε κλικ στο κουμπί Προσθήκη το πρόγραμμα χειρισμού συμβάντων από το πλαίσιο αναπτυσσόμενης λίστας. Συμβάντων προγράμματος χειρισμού οδηγό, επιλέξτε τον τύπο του μηνύματος BN_CLICKED και, στη συνέχεια, κάντε κλικ στο κουμπί Προσθήκη και επεξεργασία. Προσθέστε τον ακόλουθο κώδικα για να αυτοματοποιήσετε το Excel στο πρόγραμμα χειρισμού:
void CAutoProjectDlg::OnBnClickedRun(){
CApplication app; // app is the Excel _Application object

// Start Excel and get Application object.

if(!app.CreateDispatch("Excel.Application"))
{
AfxMessageBox("Cannot start Excel and get Application object.");
return;
}
else
{
//Make the application visible and give the user control of
//Microsoft Excel.
app.put_Visible(TRUE);
app.put_UserControl(TRUE);
}
}

Εκτελέστε το πρόγραμμα-πελάτη αυτοματισμού

Πιέστε το πλήκτρο F5 για να δημιουργήσετε και να εκτελέσετε το πρόγραμμα-πελάτη αυτοματισμού. Όταν εμφανιστεί το παράθυρο διαλόγου, κάντε κλικ στην επιλογή Εκτέλεση. Το πρόγραμμα-πελάτη αυτοματισμού ξεκινά το Excel και κάνει ορατή η εφαρμογή. Παρατηρήστε ότι Excel παραμένει σε λειτουργία ακόμα και όταν το πρόγραμμα-πελάτη αυτοματισμού τερματίζεται επειδή ο χρήστης έχει τον έλεγχο της εφαρμογής.

Πρόσθετες σημειώσεις

Αφού προσθέσετε κλάδους από μια βιβλιοθήκη τύπων στο έργο σας, ενδέχεται να παρατηρήσετε ότι εμφανίζονται στην προβολή "κατηγορία" του έργου σας. Σε προβολή κατηγορίας, κάντε διπλό κλικ σε μια κατηγορία για να δείτε τις μεθόδους αυτής της κλάσης και στη συνέχεια κάντε διπλό κλικ στο τη μέθοδο, για να προβάλετε τον ορισμό αυτής της συνάρτησης στο αρχείο εφαρμογής από το πρόγραμμα εξομοίωσης με MFC. Εάν θέλετε να επαληθεύσετε τύπο επιστροφής ή εάν πρέπει να αλλάξετε μια υλοποίηση μιας συνάρτησης, μπορείτε να δείτε τον ορισμό μιας συνάρτησης μέλους.

Παρόλο που τα προηγούμενα βήματα δείχνουν τον τρόπο για την αυτοματοποίηση του Microsoft Excel, μπορείτε να εφαρμόσετε το ίδιο ιδέες για να αυτοματοποιήσετε τις άλλες εφαρμογές. Η ακόλουθη λίστα περιέχει τα ονόματα των αρχείων για βιβλιοθήκες τύπων από άλλες εφαρμογές του Microsoft Office:
ΕφαρμογήΒιβλιοθήκη τύπων
Microsoft Access 97Msacc8.olb
Η βάση δεδομένων Microsoft Jet 3.5DAO350.dll
Microsoft Binder 97Msbdr8.olb
Microsoft Excel 97Excel8.olb
Microsoft Graph 97Graph8.olb
Microsoft Office 97Mso97.dll
Microsoft Outlook 97Msoutl97.olb
Microsoft PowerPoint 97Msppt8.olb
Microsoft Word 97Msword8.olb
Η Microsoft Access 2000Msacc9.olb
Η βάση δεδομένων Microsoft Jet 3.51DAO360.dll
Microsoft Binder 2000Msbdr9.olb
Microsoft Excel 2000Excel9.olb
Microsoft Graph 2000Graph9.olb
Microsoft Office 2000Mso9.dll
Το Microsoft Outlook 2000Msoutl9.olb
Το Microsoft PowerPoint 2000Msppt9.olb
Microsoft Word 2000Msword9.olb
Η Microsoft Access 2002Msacc.olb
Microsoft Excel 2002Excel.exe
Microsoft Graph 2002Graph.exe
Microsoft Office 2002MSO.dll
Microsoft Outlook 2002MSOutl.olb
Microsoft PowerPoint 2002MSPpt.olb
Microsoft Word 2002MSWord.olb
Microsoft Office Access 2003Msacc.olb
Microsoft Office Excel 2003Excel.exe
Γράφημα του Microsoft Office 2003Graph.exe
Microsoft Office 2003MSO.dll
Το Microsoft Office Outlook 2003MSOutl.olb
Το Microsoft Office PowerPoint 2003MSPpt.olb
Το Microsoft Office Word 2003MSWord.olb
Microsoft Office Access 2007Msacc.olb
Microsoft Office Excel 2007Excel.exe
Γράφημα του Microsoft Office 2007Graph.exe
2007 Microsoft OfficeMSO.dll
Το Microsoft Office Outlook 2007MSOutl.olb
Το Microsoft Office PowerPoint 2007MSPpt.olb
Το Microsoft Office Word 2007MSWord.olb
Σημείωση Η προεπιλεγμένη θέση για αυτές τις βιβλιοθήκες τύπων είναι:
Έκδοση του OfficeΔιαδρομή
Office 97C:\Program Files\Microsoft Office\Office
Office 2000C:\Program Files\Microsoft Office\Office
Office XPC:\Program Files\Microsoft Office\Office10
Office 2003C:\Program Files\Microsoft Office\Office11
2007 officeC:\Program Files\Microsoft Office\Office12
Η προεπιλεγμένη θέση για Dao350.dll και Dao360.dll είναι C:\Program Εφαρμογών\Κοινά Files\Microsoft Shared\Dao.

Αναφορές

Επισκεφθείτε το Visual C++ .NET Support Center στην ακόλουθη τοποθεσία της Microsoft στο Web:
Ιδιότητες

Αναγνωριστικό άρθρου: 307473 - Τελευταία αναθεώρηση: 21 Ιαν 2017 - Αναθεώρηση: 1

Microsoft Visual C++ .NET 2002 Standard Edition, Microsoft Office Professional 2007, Microsoft Office Professional Edition 2003, Microsoft Office XP Developer Edition, Microsoft Office 2000 Developer Edition, Microsoft Office 97 Developer Edition

Σχόλια