Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программирование, связанное с MS Office > Управление офисом из своего приложения


Автор: Sinaps 20.3.2007, 13:42
Народ, может кому-нибудь приходилось из своего приложения допустим, проверять почту посредством outlook, создавать заметки контакты, ну вообщем выполнять типовые действия не лазя в сам outlook. Как выяснилось, меню outlook не наследуется от HMENU и добраться к нему таким способом не получается...
Подскажите, как быть...

Автор: mihanik 20.3.2007, 14:39
Это всё можно.

НО!!!

Сделать всё это свободно тебе не удастся.
В офисе (на сколько я понимаю, начиная с 2000) встроена система безопасности Outlook.
При обращении сторонней программы к базе адресов, контактов и т.п. Outlook'а выскакивает уведомление о попытке доступа, и пользователю будет необходимо принять решение о том, что делать:
Пускать стороннюю программу к данным Outlook или нет.

Тебе такой расклад подходит?
Если подходит, то всё остальное очень просто.

Пример ниже

Код

'  Cоздадим объект, указывающий на Outlook
     Set OutlookApp = CreateObject( "Outlook.Application" )

' Подключаюсь к пространству имшн
      Set mapi = OutlookApp.GetNameSpace("MAPI")

' Получаю коллекцию контактов...
      Set AllContacts = mapi.GetDefaultFolder( olFolderContacts ).Items

      Msgbox "В адресной книге Outlook "  & AllContacts.Count & " контактов."

      Set AllContacts = Nothing
      Set mapi        = Nothing
      Set OutlookApp = Nothing



Это так я узнаю, сколько контактов в аутлуке забито...

Чтобы узнать больше, читай встроенную справку Outlook.
Там много доброго, умного, вечного...

Автор: Sinaps 20.3.2007, 15:04
А на С++ это можно сделать?

Автор: mihanik 20.3.2007, 16:51
Можно.
Делай.
Разрешаю.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)