Ako vytvoriť projektu automatizácia pomocou MFC a type library

Preklady článku Preklady článku
ID článku: 178749 - Zobraziť produkty, ktorých sa tento článok týka.
Rozbaliť všetko | Zbaliť všetko

Na tejto stránke

SUHRN

Tento článok ilustruje podrobne, ako automatizovať súčasť integrácie s COM-kompatibilné aplikácie, ako je Microsoft Kancelárske aplikácie.

DALSIE INFORMACIE

Tento oddiel vysvetľuje, ako si môžete vytvoriť MFC projekt. Príklad automatizuje programu Microsoft Excel. Môžete použiť prvýkrát 8 krokov pre žiadny projekt, a upraviť kroky 8 až 15, keď pracujete s iným aplikácia.

Vytvoriť automatizácie projekt

  1. Microsoft Developer Studio, začať nové "MFC AppWizard (exe) "projekt nazvaný „AutoProject. ”
  2. V kroku 1 MFC AppWizard zvoliť pre "Dialóg založený" typ aplikácie a potom kliknite na tlačidlo Dokončiť.

    Nový projekt Dialógové okno informácie sa zobrazí a uvádza, že tried sa vytvorí zahŕňajú:
          Application: CAutoProjectApp in AutoProject.h and AutoProject.cpp
          Dialog: CAutoProjectDlg in AutoProject.h and AutoProjectDlg.cpp
    						
    Kliknite na tlačidlo OK vytvoriť projekt.
  3. Otvorí dialógové okno "IDD_AUTOPROJECT_DIALOG" v vizuálne Štúdio design/upraviť oblasť. Upraviť ho podľa pokynov v nasledujúcich dva kroky.
  4. Odstrániť ovládací prvok popisu (IDC_STATIC) a tlačidlom zrušiť (IDCANCEL).
  5. Zmeniť názov tlačidla OK "IDRUN" a popis na "Spustiť." Zatvorte návrh formulára AutoProject.rc dialógovom okne blok.
  6. V ponuke Zobraziť kliknite na ClassWizard (alebo stlačte kombináciu klávesov CTRL + W).
  7. Vyberte správu mapy tab. Vyberte IDRUN v ID objektu zoznam a vyberte "BN_CLICKED" v zozname správ. Kliknite na tlačidlo Pridať funkciu a prijať názov funkcie "OnRun". Kliknite na tlačidlo OK zatvorte ClassWizard.

    Poznámka: Tento krok pridá vyhlásenie pre funkciu členských "OnRun()," v hlavičke súboru s názvom AutoProjectDLG.h. Tento krok pridá aj prázdne skeletu správu handler funkciu s názvom CAutoProjectDlg::OnRun() na súbor s názvom AutoProjectDLG.cpp.
  8. V ponuke Zobraziť kliknite na ClassWizard (alebo stlačte kombináciu klávesov CTRL + W).
  9. Zvoľte automatizačného Kreslenie kliknite na tlačidlo Pridať triedy a vyberať " typovú knižnicu." Prejdite na vyberte Objektová knižnica pre uplatňovanie ste chcú automatizovať (napríklad ak sú automatizácia Excel 97, vyberte Objektová knižnica programu Microsoft Excel 8.0; predvolené umiestnenie je C:\Program Files\Microsoft Office\Office\Excel8.olb).

    Ak chcete Program Microsoft Excel 2000, vyberte program Microsoft Excel 9.0 Objektová knižnica pre ktoré predvolené umiestnenie je C:\Program Files\Microsoft Office\Office\Excel9.olb.

    Ak chcete program Microsoft Excel 2002 a Microsoft Office Excel 2003, Objektová knižnica je vložený v súbore Excel.exe. Predvolené umiestnenie pre Excel.exe v balíku Office 2002 je C:\program Files\Microsoft Office\Office10\Excel.exe. Je predvolené umiestnenie Excel.exe v balíku Office 2003 C:\Program Files\Microsoft Office\Office11\Excel.exe. Raz ste vybrali knižnica príslušný objekt, kliknite na tlačidlo Otvoriť. Vyberte všetky triedy v potvrdiť Zoznam tried, a potom kliknite na tlačidlo OK.

    Poznámka: V zozname políčko potvrdiť Dialógové okno triedy obsahuje všetky rozhrania IDispatch, (ktoré sú prakticky zhodná tried) v knižnici typov programu Microsoft Excel. V dolnej polovici dialógového okna, uvidíte, že implementácia súboru s názvom Excel8.CPP obsahuje balíčkov generované triedy odvodené z ColeDispatchDriver(), a príslušné prehlásenie hlavička súboru s názvom Excel8.h. (Pre program Excel 2002 a Excel 2003, súbory sú pomenované Excel.cpp a Excel.h.)
  10. Kliknutím na tlačidlo OK zatvorte dialógové okno MFC ClassWizard.
  11. Pridať nasledujúci kód do CAutoProjectApp::InitInstance() funkciu, ktorá načíta a umožňuje KOM služby knižnica:
          BOOL CAutoProjectApp::InitInstance()
          {
             if(!AfxOleInit())  // Your addition starts here
             {
                AfxMessageBox("Could not initialize COM dll");
                return FALSE;
             }                 // End of your addition
    
             AfxEnableControlContainer();
          .
          .
          .
    
          }
    					
  12. Pridať nasledovné riadok # obsahovať výkazy na hore AutoProject.cpp programový súbor:
          #include <afxdisp.h>
    					
  13. Pridať zahrnúť výkaz pre excel8.h po zahrnúť výkaz pre stdafx.h v hornej časti AutoProjectDlg.cpp programový súbor:
          #include "stdafx.h"
          #include "excel8.h" // excel.h in the case of Excel 2002 and Excel 2003.
    					
  14. Pridať automatizácie kód na CAutoProjectDlg::OnRun() tak, aby Zdá sa, ako je uvedené nižšie:
          void CAutoProjectDlg::OnRun()
          {
              _Application app;  // app is the Excel _Application object
    
              // Start Excel and get Application object...
             if(!app.CreateDispatch("Excel.Application"))
             {
                AfxMessageBox("Couldn't start Excel.");
             }
             else
             {
                //Make Excel Visible and display a message
              app.SetVisible(TRUE);
              AfxMessageBox ("Excel is Running!");
             }
          }
    					
  15. Vybudovať a spustenie projektu. Výsledky: Po kliknutí na tlačidlo Spustiť tlačidlo v dialógovom okne Microsoft Excel bude zahájená. Aktivovať Auto_Excel dialógové okno a zamietol v okne s hlásením. V programe Microsoft Excel budú skončiť končí funkciu CAutoProjectDlg::OnRun(), pretože uplatňovanie premenná bude išli mimo rozsah.

Dodatočné poznámky

Akonáhle ste pridali tried z knižnice typov na vaše projekt (ako ste urobil v kroku 9 vyššie), si všimnete, že mnoho tried bol pridaný do projektu. V ClassView, môžete dvakrát kliknúť triedy vidieť Členské funkcie tejto triedy a potom kliknite dvakrát, člen fungovali na View definition túto funkciu v súbore Excel8.cpp implementácie.

Budete musieť ísť do definície členské funkcie, ak si želáte návrat spôsob overenia, alebo ak potrebujete zmeniť funkciu implementácie. Akékoľvek čas môžete zmeniť definíciu funkcie, nezabudnite zmeniť vyhlásenie v Excel8.h súbor. Pritom byť istí, že zmeniť správnu funkciu vyhlásenia; niekedy je rovnaký názov uvedený členské funkcie viacerých classes--GetApplication() je jeden takýto príklad.

Hoci kroky vyššie ilustráciu ako zautomatizovať programu Microsoft Excel, môžete použiť rovnaké myšlienky na automatizáciu iné aplikácie. Nižšie uvedený zoznam obsahuje názvy súborov pre typ knižníc aplikácie balíka Microsoft Office:
   Application                           Type Library
   --------------------------------------------------

   Microsoft Access 97                   Msacc8.olb
   Microsoft Jet Database 3.5            DAO350.dll
   Microsoft Binder 97                   Msbdr8.olb
   Microsoft Excel 97                    Excel8.olb
   Microsoft Graph 97                    Graph8.olb
   Microsoft Office 97                   Mso97.dll
   Microsoft Outlook 97                  Msoutl97.olb
   Microsoft PowerPoint 97               Msppt8.olb

   Microsoft Word 97                     Msword8.olb
   Microsoft Access 2000                 Msacc9.olb
   Microsoft Jet Database 3.51           DAO360.dll
   Microsoft Binder 2000                 Msbdr9.olb
   Microsoft Excel 2000                  Excel9.olb
   Microsoft Graph 2000                  Graph9.olb
   Microsoft Office 2000                 Mso9.dll
   Microsoft Outlook 2000                Msoutl9.olb
   Microsoft PowerPoint 2000             Msppt9.olb
   Microsoft Word 2000                   Msword9.olb 

   Microsoft Access 2002                 Msacc.olb
   Microsoft Excel 2002                  Excel.exe
   Microsoft Graph 2002                  Graph.exe 
   Microsoft Office 2002                 MSO.dll
   Microsoft Outlook 2002                MSOutl.olb
   Microsoft PowerPoint 2002             MSPpt.olb
   Microsoft Word 2002                   MSWord.olb

   Microsoft Office Access 2003          Msacc.olb
   Microsoft Office Excel 2003           Excel.exe
   Microsoft Graph 2003                  Graph.exe 
   Microsoft Office 2003                 MSO.dll
   Microsoft Office Outlook 2003         MSOutl.olb
   Microsoft Office PowerPoint 2003      MSPpt.olb
   Microsoft Office Word 2003            MSWord.olb
				
Poznámka: Predvolené umiestnenie pre tieto typ knižnice je C:\Program Files\Microsoft Office\Office (pre Office 2002 cesta je C:\...\Office10 a pre balík Office 2003 cesta je C:\...\Office11), s výnimkou pre Dao350.dll alebo Dao360.dll a 10(MSO.dll) balíka Microsoft Office. Predvolené umiestnenie pre Dao350.dll/Dao360.DLL je C:\Program Files\Common Files\Microsoft Shared\Dao. Predvolené umiestnenie pre MSO.dll je C:\Program Files\Common Files\Microsoft Shared\Office10 pre Office 2002 a C:\Program Files\Common Files\Microsoft Shared\Office11 pre balík Office 2003.

ODKAZY

Tento článok predstavuje osobitný prístup do budovy dialógové okno-projekt. Ak by ste chceli vidieť viac všeobecná dokumentácia proces budovania projekt VC ++ v Microsoft Developer Studio životné prostredie, je tu Výborné tutoriál máte prístup pomocou Visual Štúdio InfoView. Prístup k tutorial, kliknite na položku Hľadať v ponuke Pomocník. Kliknite na položku kartu Register a typ takto:
práca na projektoch
Kliknite na tlačidlo zobraziť témy. Vyberte tému "Hlavná stránka: práca s Projekty"a kliknite na tlačidlo zobraziť. Ďalšie informácie o automatizácii aplikácií balíka Office nájdete po kliknutí na nasledovné číslo článku databázy Microsoft Knowledge Base:
222101Ako nájsť a používať Office objekt modelu dokumentácia

Vlastnosti

ID článku: 178749 - Posledná kontrola: 18. októbra 2011 - Revízia: 2.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
  • Microsoft Foundation Class Library 4.2
  • Microsoft Office XP Developer Edition
  • Microsoft Office 2000 Developer Edition
Kľúčové slová: 
kbautomation kbhowto kbinterop kbmt KB178749 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem:178749

Odošlite odozvu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com