Jak použít knihovnu typů pro automatizaci Office z Visual C++ .NET

Překlady článku Překlady článku
ID článku: 307473 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Souhrn

Tento článek popisuje, jak sestavit Visual C++ .NET projektu slouží jako klient automatizace jsou komponent modelu COM) kompatibilní s aplikací. Ukázkové v tomto článku používá Microsoft Foundation Classes (MFC) s třídy obálky pro součást sady Office.

Další informace

Následující kroky ukazují, jak vytvořit jednoduchý klienta automatizace. Existují tři hlavní kroky tohoto postupu:
  1. Vytvoření klienta automatizace.
  2. Přidat kód automatizovat uzavřený.
  3. Spuštění klienta automatizace.
Pomocí první krok , můžete vytvořit nové automatizace klienta ohledu Automation server, který používáte. Druhý krok Add Code to Automate Microsoft Excel je konkrétní Automation server.

Vytvoření klienta automatizace

  1. Spusťte aplikaci Visual Studio .NET. V nabídce soubor klepněte na příkaz Nový a klepněte na příkaz projekt. Vyberte Aplikace MFC z typů Projekty Visual C++ a název projektu AutoProject.
  2. Jakmile se zobrazí Průvodci aplikace MFC, klepněte na Typ aplikaceDialog Based nastavit typ aplikace a klepněte na tlačítko Dokončit.
  3. Dialogové okno IDD_AUTOPROJECT_DIALOG změnit následujícím způsobem:
    1. Odebrat Popisek ovládacího prvku (IDC_STATIC) a tlačítko Storno (IDCANCEL)
    2. Změňte ID na tlačítko OK "IDRUN" a titulek "Spuštění"
  4. Vytvořit obálky třídy z knihovny typů Automation server následujícím způsobem:
    1. V aplikaci Solution Explorer klepněte pravým tlačítkem myši AutoProject a potom klepněte na tlačítko Přidat třídu.
    2. Třídy MFC z TypeLib klepněte a potom klepněte na tlačítko Otevřít.
    3. Klepněte na tlačítko přidáním třídy z: registru a vyhledejte registrovaný typ knihovny pro vaše Automation server.

      Tento příklad vyberte "Microsoft Excel 10.0 Type Library" pro "Microsoft Excel 9.0 Type Library" pro Microsoft Excel 2000 nebo Microsoft ExcelXP.
    4. Interface(s) potřebujete vyberte ze seznamu a klepněte na tlačítko větší než (>) symbol je přidat do seznamu rozhraní, pro které MFC vytvoří obálky. Klepněte na příkazDokončit po přidání všech rozhraní.

      V tomto příkladu potřebujete pouze rozhraní _Application.

      Důležité: Pokud jsou v knihovně typů, které jste zvolili mnoho rozhraní, vyberte pouze rozhraní, které budete používat, protože MFC bude generovat soubor samostatné záhlaví pro každé vybrané rozhraní. Minimalizací výběry rozhraní vyhnout zbytečným režii během generování souboru a kompilace.
  5. Načíst a povolit knihovnu COM služby funkci CAutoProjectApp::InitInstance přidejte následující kód:
    if(!AfxOleInit())  // Your addition starts here.
    {
      AfxMessageBox("Cannot initialize COM dll");
      return FALSE;
      // End of your addition.
    }
    
    AfxEnableControlContainer();
    					
  6. Přidat direktiva začlenění pro každý soubor záhlaví, který je generován z rozhraní v knihovně typů Automation server. Přidat direktivy pro Stdafx.h v horní části AutoProjectDlg.cpp po příkazu include.

    Tento příklad přidat zahrnutí pro CApplication.h záhlaví souboru, který je generován pro rozhraní _Application:
          #include "stdafx.h"
          #include "CApplication.h"
    					

Přidat kód automatizovat uzavřený

V dialogovém okně IDD_AUTOPROJECT_DIALOG klepněte pravým tlačítkem Spustit a potom klepněte na tlačítko Přidat obslužné rutiny události z rozevíracího seznamu. V událostí popisovač průvodce vyberte typ zprávy BN_CLICKED a potom klepněte na tlačítko Přidat a upravit. Přidejte následující kód automatizovat Excel obslužnou rutinu:
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);
   }
} 
				

Spuštění klienta automatizace

Stisknutím klávesy F5 sestavit a spustit klienta automatizace. Zobrazí se dialogové okno, klepněte na tlačítko Spustit. Automatizace klient spustí aplikaci Excel a provede aplikace viditelné. Všimněte si Excel zůstane spuštěný i když klienta automatizace končí, protože uživatel má přidělena ovládacího prvku aplikace.

Další poznámky

Po přidání třídy z knihovny typů do projektu všimnout zobrazí v zobrazení třídy do projektu. V zobrazení třídy poklepejte na třídy zobrazíte metody třídy a poklepejte na metodu zobrazení definice, které fungují v souboru implementace souhrnný MFC. Definice členské funkce můžete zkontrolovat, pokud chcete ověřit návratový typ nebo pokud je nutné změnit implementaci funkce.

Přestože starší kroky ilustrují způsob automatizace uzavřený, můžete použít stejné nápady automatizovat jiných aplikací. Následující seznam obsahuje názvy souborů knihoven typů jiných aplikací sady Microsoft Office:
Zmenšit tuto tabulkuRozšířit tuto tabulku
AplikaceTyp knihovny
Microsoft Access 97,Msacc8.olb
Databáze Microsoft Jet 3.5DAO350.dll
Microsoft Binder 97Msbdr8.olb
Microsoft Excel 97Excel8.olb
Microsoft Graph 97Graph8.olb
Microsoft Office 97Mso97.dll
Aplikace Microsoft Outlook 97Msoutl97.olb
Microsoft PowerPoint 97Msppt8.olb
Microsoft Word 97Msword8.olb
Microsoft Access 2000Msacc9.olb
Databáze Microsoft Jet 3.51Dao360.dll
Microsoft Binder 2000Msbdr9.olb
Microsoft Excel 2000Excel9.olb
Microsoft Graph 2000 Graph9.olb
Microsoft Office 2000Mso9.dll
Microsoft Outlook 2000Msoutl9.olb
Microsoft PowerPoint 2000Msppt9.olb
Microsoft Word 2000Msword9.olb
Aplikace Microsoft Access 2002Msacc.olb
Aplikace Microsoft Excel 2002Excel.exe
Microsoft Graph 2002Graph.exe
Microsoft Office 2002 Mso.dll
Microsoft Outlook 2002Msoutl.olb
Microsoft PowerPoint 2002Msppt.olb
Microsoft Word 2002Msword.olb
Microsoft Office Access 2003Msacc.olb
Microsoft Office Excel 2003Excel.exe
Graf Microsoft Office 2003Graph.exe
Sada 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
Graf Microsoft Office 2007Graph.exe
Systém Microsoft Office 2007Mso.dll
Microsoft Office Outlook 2007Msoutl.olb
Microsoft Office PowerPoint 2007Msppt.olb
Microsoft Office Word 2007Msword.olb
Poznámka: Výchozí umístění těchto knihoven typů je:
Zmenšit tuto tabulkuRozšířit tuto tabulku
Verze sady OfficeCesta
Sady Office 97C:\Program Files\Microsoft Office\Office
Office 2000C:\Program Files\Microsoft Office\Office
Office XPC:\Program Files\Microsoft Office\Office10
Sada Office 2003C:\Program Files\Microsoft Office\Office11
2007 OfficeC:\Program Files\Microsoft Office\OFFICE12
Výchozí umístění pro Dao350.dll a Dao360.dll je C:\Program Files\Common Files\Microsoft Shared\Dao.

Odkazy

Další obecné informace o Visual C++ .NET naleznete v následujících diskusních skupin Usenet:
Microsoft.public.dotnet.languages.vc
Visual C++ .NET odborné pomoci následující web společnosti:
http://support.microsoft.com/default.aspx?xmlid=fh%3BEN-US%3Bvcnet

Vlastnosti

ID článku: 307473 - Poslední aktualizace: 18. dubna 2007 - Revize: 8.1
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Visual C++ .NET 2002 Standard Edition
  • Microsoft Foundation Class Library 4.2
  • Microsoft Office Professional 2007
  • Microsoft Office Professional Edition 2003
  • Microsoft Office XP Developer Edition
  • Microsoft Office 2000 Developer Edition
  • Microsoft Office 97 Developer Edition
Klíčová slova: 
kbmt kbexpertiseinter kbautomation kbhowto kbnewsgrouplink KB307473 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:307473

Dejte nám zpětnou vazbu

 

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