Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

Làm thế nào để sử dụng một thư viện kiểu cho văn phòng tự động hóa từ Visual C++.NET

Hỗ trợ dành cho Office 2003 đã kết thúc

Microsoft đã kết thúc hỗ trợ dành cho Office 2003 vào ngày 8 tháng 4 năm 2014. Thay đổi này đã ảnh hưởng đến các bản cập nhật phần mềm và các tùy chọn bảo mật của bạn. Tìm hiểu ý nghĩa của điều này với bạn và cách thực hiện để luôn được bảo vệ.

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:307473
TÓM TẮT
Bài viết này mô tả cách xây dựng một Visual C++.NET dự án hoạt động như một khách hàng tự động hóa cho các ứng dụng là thành phần Đối tượng mô hình (COM) tuân thủ. Các mẫu trong bài viết này sử dụng Microsoft Tổ chức các lớp học (MFC) với lớp giò cho một thành phần văn phòng.
THÔNG TIN THÊM
Các bước sau đây chứng minh làm thế nào để xây dựng một đơn giản Khách hàng tự động hóa. Có ba bước chính cho thủ tục này:
  1. Tạo ra các khách hàng tự động hóa.
  2. Thêm mã để tự động hoá Microsoft Excel.
  3. Hành khách hàng tự động hóa.
Bạn có thể sử dụng bước đầu tiên, Tạo ra các khách hàng tự động hóa, để tạo ra một tự động hóa mới khách hàng không phân biệt của máy chủ tự động hóa mà bạn đang sử dụng. Bước thứ hai, Thêm mã để tự động hoá Microsoft Excel, là cụ thể cho các máy chủ tự động hóa.

Tạo ra một khách hàng tự động hóa

  1. Bắt đầu Microsoft Visual Studio.NET. Trên các Tệp trình đơn, nhấp vào Mới, sau đó bấm Dự án. Chọn Ứng dụng MFC Visual C++ dự án các loại và sau đó tên dự án AutoProject.
  2. Khi MFC ứng dụng Wizard xuất hiện, nhấp vào Loại ứng dụng, thiết lập loại ứng dụng để Hộp thoại dựa, sau đó bấm Kết thúc.
  3. Sửa đổi các IDD_AUTOPROJECT_DIALOG hộp thoại như sau:
    1. Loại bỏ các Nhãn hiệu kiểm soát (IDC_STATIC) và các Hủy bỏ nút (IDCANCEL).
    2. Thay đổi ID của các Ok nút để "IDRUN" và chú thích cho "Run."
  4. Tạo lớp hàm bao từ thư viện kiểu cho các Tự động hóa máy chủ như sau:
    1. Trong giải pháp Explorer, bấm chuột phải vào AutoProject, sau đó bấm Thêm Class.
    2. Nhấp vào MFC lớp từ Typelib, sau đó bấm Mở.
    3. Nhấp vào Thêm một lớp học từ: đăng ký, và định vị những loại thư viện cho tự động hóa của bạn hệ phục vụ.

      Ví dụ này, chọn "Microsoft Excel 10,0 Type Library" Đối với Microsoft ExcelXP hay "Thư viện kiểu Microsoft Excel 9,0" cho Microsoft Excel năm 2000.
    4. Chọn interface(s) bạn cần trong danh sách, và sau đó nhấp vào lớn hơn so với biểu tượng (>) để thêm chúng vào danh sách giao diện mà MFC tạo ra hàm bao. Nhấp vào Kết thúc khi bạn đã thêm tất cả các giao diện.

      Đối với điều này Ví dụ, bạn chỉ cần các _Application giao diện.

      Quan trọng Nếu có rất nhiều giao diện trong thư viện loại bạn đã chọn, chọn chỉ là những giao diện mà bạn sẽ sử dụng vì MFC sẽ tạo ra một tập tin tiêu đề riêng biệt cho mỗi lựa chọn giao diện. Bằng cách giảm thiểu giao diện của bạn lựa chọn, bạn có thể tránh chi phí không cần thiết trong thế hệ tập tin và trình biên dịch.
  5. Để tải và kích hoạt tính năng dịch vụ COM thư viện để các CAutoProjectApp::InitInstance chức năng, thêm mã sau đây:
    if(!AfxOleInit())  // Your addition starts here.{  AfxMessageBox("Cannot initialize COM dll");  return FALSE;  // End of your addition.}AfxEnableControlContainer();					
  6. Thêm một chỉ thị bao gồm cho mỗi tập tin tiêu đề đó là được tạo ra từ các giao diện trong thư viện loại của máy chủ tự động hóa. Thêm các chỉ thị sau khi các báo cáo bao gồm cho Stdafx.h ở trên cùng của AutoProjectDlg.cpp.

    Ví dụ này, thêm một bao gồm cho các CApplication.h tập tin tiêu đề, được tạo ra cho các _Application giao diện:
          #include "stdafx.h"      #include "CApplication.h"					
back to the top

Thêm mã để tự động hoá Microsoft Excel

Trong các IDD_AUTOPROJECT_DIALOG hộp thoại hộp, bấm chuột Chạy, sau đó bấm Thêm xử lý sự kiện từ danh sách thả xuống của ô. Trong trường hợp Handler Wizard, chọn các BN_CLICKED thông điệp kiểu, và sau đó nhấp vào Thêm và chỉnh sửa. Thêm mã sau đây để tự động hoá Excel trong bộ xử lý:
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);   }} 				
back to the top

Chạy các khách hàng tự động hóa

Bấm phím F5 để xây dựng và chạy các khách hàng tự động hóa. Khi các hộp thoại xuất hiện, nhấp vào Chạy. Khách hàng tự động hóa bắt đầu Excel và làm cho các ứng dụng có thể nhìn thấy. Thông báo rằng Excel vẫn còn chạy ngay cả khi khách hàng tự động hóa kết thúc bởi vì người dùng có thể được trao quyền kiểm soát của các ứng dụng.

back to the top

Chú ý bổ sung

Sau khi bạn đã thêm vào các lớp học từ một thư viện kiểu cho dự án của bạn, bạn có thể nhận thấy rằng chúng xuất hiện trong lớp giao diện của dự án của bạn. Trong lớp học Xem, bạn có thể nhấp đúp vào một lớp học để xem các phương pháp của lớp đó, và sau đó bấm đúp vào phương pháp để xem định nghĩa của chức năng đó trong các thực hiện file của MFC wrapper. Bạn có thể xem xét định nghĩa của một tài khoản của chức năng nếu bạn muốn xác minh một loại trở lại, hoặc nếu bạn phải thay đổi một thực hiện một chức năng.

Mặc dù các bước trước đó minh họa làm thế nào để tự động hoá Microsoft Excel, bạn có thể áp dụng những ý tưởng tương tự để tự động hoá khác các ứng dụng. Danh sách sau đây có chứa các tên tập tin cho các thư viện kiểu của các ứng dụng Microsoft Office khác:
Ứng dụngThư viện kiểu
Microsoft truy cập 97Msacc8.olb
Microsoft phản lực cơ sở dữ liệu 3.5DAO350.dll
Microsoft Binder 97Msbdr8.olb
Microsoft Excel 97Excel8.olb
Microsoft đồ thị 97Graph8.olb
Microsoft văn phòng 97Mso97.dll
Microsoft Outlook 97Msoutl97.olb
Microsoft PowerPoint 97Msppt8.olb
Microsoft Word 97Msword8.olb
Microsoft Access 2000Msacc9.olb
Microsoft phản lực cơ sở dữ liệu 3.51DAO360.dll
Microsoft Binder 2000Msbdr9.olb
Microsoft Excel 2000Excel9.olb
Microsoft đồ thị 2000 Graph9.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 đồ thị 2002Graph.exe
Microsoft văn phòng 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
Đồ thị 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
Đồ thị Microsoft Office 2007Graph.exe
2007 Microsoft OfficeMSO.dll
Microsoft Office Outlook 2007MSOutl.olb
Microsoft Office PowerPoint 2007MSPpt.olb
Microsoft Office Word 2007MSWord.olb
Chú ý Vị trí mặc định cho các thư viện kiểu là:
Phiên bản OfficeĐường dẫn
Văn phòng 97C: Program Files Files\Microsoft chương
Office 2000C: Program Files Files\Microsoft chương
Office XPC: Program Files Files\Microsoft Office\Office10
Office 2003C: Program Files Files\Microsoft Office\Office11
Văn phòng 2007C:\Program Files\Microsoft Office\Office12
Các vị trí mặc định cho Dao350.dll và Dao360.dll là C:\Program Files\Common Files\Microsoft Shared\Dao.
THAM KHẢO
Để biết thông tin tổng quát hơn về Visual C++.NET, xem các nhóm tin Usenet sau đây: Truy cập vào Visual c + +.Trung tâm hỗ trợ NET lúc sau đây Web site của Microsoft:
IDispatch ole tự động hóa listbox OFF2007

Cảnh báo: Bài viết này đã được dịch tự động

Thuộc tính

ID Bài viết: 307473 - Xem lại Lần cuối: 10/06/2011 04:20:00 - Bản sửa đổi: 3.0

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

  • kbexpertiseinter kbautomation kbhowto kbnewsgrouplink kbmt KB307473 KbMtvi
Phản hồi