CALCDRIV-Beispiel: Demonstriert eine Automatisierungsclientanwendung
Das CALCDRIV-Beispiel ist eine einfache Automatisierung (früher OLE-Automatisierung)-Clientanwendung. CALCDRIV steuert die 0c716z9h(v=vs.100).md Beispielanwendung MFCCALC, also einen, der grundlegende Rechnerfunktionen bereitstellt. MFCCALC verfügt über eine einfache, die die Rechner-Anwendung ähnelt, die in Windows enthalten ist.
![]() |
---|
Dieser Beispielcode soll ein Konzept veranschaulichen, und es wird nur den Code, der für dieses Konzept relevant sind. Möglicherweise erfüllt dieser nicht die Sicherheitsanforderungen für eine bestimmte Umgebung, und er sollte nicht genau wie dargestellt verwendet werden. Wir empfehlen, Sicherheits- und Fehlerbehandlungscode hinzuzufügen, um Ihre Projekte sicherer und stabiler zu machen. Microsoft stellt diesen Beispielcode "Wie besehen"keine Garantien. |
So erhalten Sie Beispiele und Anweisungen für deren Installation:
Um Beispiele von Visual Studio zuzugreifen
im Menü Hilfe Menü klicken Beispiele.
Standardmäßig sind die Beispiele in installiert. Laufwerk: \Programme\Microsoft visual Studio 10.0\Samples\.
- Die neueste Version dieses Beispiels und eine Liste der anderen Beispiele finden Sie unter Visual Studio Samples auf der MSDN-Website.
Erstellen und Ausführen des Beispiels
So erstellen und das CALCDRIV-Beispiel führen
Folgen Sie die Anweisungen im MFCCALC um das Projekt zu erstellen und auszuführen.
Öffnen Sie calcdriv.sln
erstellen Sie Menü, klicken Sie auf erstellen.
Hinweis
Wenn Sie nicht zu erstellen und MFCCALC, registrieren bevor Sie CALCDRIV erstellen, erhalten Sie der Nachricht "Unable to create 'MFCCALC.Application'Objekt".
Wenn Sie CALCDRIV ausführen, die Microsoft Foundation Class Library (MFC) -Dialogfelds Calc Driver angezeigt und die MFCCALC-Anwendung wird gestartet. Können Sie die MFCCALC Rechner-Benutzeroberfläche direkt zu diesem Zeitpunkt, oder Sie können wie folgt MFCCALC von CALCDRIV Laufwerk.
Auf Laufwerk MFCCALC von CALCDRIV
In MFC Calc Driver Feld Ausdruck, bieten Sie zwei oder mehr Zahlen getrennt vom Operator +,-, *, oder /.
Hinweis
MFCCALC kann keine Klammern interpretieren und implementiert keine Operatorrangfolge.
Klicken Sie auf Go um MFCCALC den Ausdruck in eine Schritt auswerten.
Klicken Sie auf Einzelschritt zu Schritt über den Ausdruck eine Zahl oder Operator zu einem Zeitpunkt.
Click Refresh to request state information for MFCCALC (Last Accumand Last Operand).
Verwenden einer Dispatch-Klasse
CALCDRIV verwendet die CRemoteCalcDlg Klasse wie folgt:
Die CRemoteCalcDlg-Klasse von CALCDRIV stellt die Dispatchschnittstelle von MFCCALC dar. Klasse CRemoteCalcDlg wird von CCmdTargetabgeleitet, über einige automatisierungsspezifische Memberfunktionen, z. B. CreateDispatch.
CDriverDlg bettet ein Objekt CRemoteCalcDlgm_calc. Das CRemoteCalcDlg -Objekt, wie die CDriverDlg-Objekt, in dem Sie eingebettet ist, ist für die meisten von CALCDRIV aktiv. CRemoteCalcDlg wird erstellt, wenn das Dialogfeldobjekt erstellt wird.
CDriverDlg::OnInitDialog ruft CCmdTarget::CreateDispatch für das CRemoteCalcDlg-Objekt. CreateDispatch erfordert den Dispatch-Namen als ersten Parameter. Der Entwickler einer Automatisierungsserveranwendung stellt i. d. r. Dokumentation, die die Namen der Dispatch-Schnittstellen und die Eigenschaften und Methoden der Schnittstellen beschreibt bereit. Eine andere Möglichkeit um die Namen der Dispatchschnittstellen einer Automatisierungsserveranwendung suchen besteht darin, suchen bei der Windows-Registrierung des Servers mithilfe von REGEDIT/v (die verbose-Option).
CDriverDlg implementiert die Ausdrucksauswertung von CALCDRIV durch den Aufruf der Button-Methode von MFCCALC, einen Emulator für die verschiedenen Schaltflächen im Dialogfeld des Rechners ist.
CDriverDlg implementiert CALCDRIV -Funktion berechnen, indem die GetOpnd und GetAccum Methoden von MFCCALC.
CDriverDlg Destruktor ruft die Quit-Methode von MFCCALC MFCCALC Herunterfahren, wenn CALCDRIV geschlossen verfügbar gemacht werden.
Schlüsselwörter
Dieses Beispiel demonstriert die Verwendung der folgenden Schlüsselwörter:
AfxMessageBox; AfxOleInit; CDialog::DoModal; CDialog::EndDialog; CDialog::OnInitDialog; CEdit::GetSel; CEdit::SetSel; COleDispatchDriver::AttachDispatch; COleDispatchDriver::CreateDispatch; COleDispatchDriver::GetProperty; COleDispatchDriver::InvokeHelper; COleDispatchDriver::SetProperty; CString::GetLength; CWinApp::InitInstance; CWnd::DoDataExchange; CWnd::GetWindowText; CWnd::SetWindowText; GetWindowText; afxMemDF; min; wsprintf
Hinweis
Zeigt weiterhin wie Sie den beabsichtigten Vorgang ausführen, aber in diesem Beispiel möglicherweise nicht genau veranschaulichen einige Features von Visual C++-Assistenten, Bibliotheken und Compiler.