Цель: отправить сообщение контакту Skype после выполнения определенного макроса.
Источники: я искал и нашел пару вопросов в SO, пытающихся сделать то же самое. Это основа кода, который я использую Использование Excel VBA для отправки сообщений Skype в групповой чат, а также этот https://www.mrexcel.com/forum/excel-questions/424432-sending-skype-message-through-excel-vba.html В обоих этих вопросах используется аналогичный код .
Проблема. Когда я запускаю код, я получаю следующую ошибку:
Ошибка выполнения «429»: компонент ActiveX не может создать объект
на линии:
Set aSkype = New SKYPE4COMLib.Skype
Вопрос. Этот API все еще работает для такого рода процедур? Как я могу решить текущую ошибку?
Код:
Sub testingskype()
Dim aSkype As SKYPE4COMLib.Skype
Set aSkype = New SKYPE4COMLib.Skype
Dim oChat As Chat
Dim skUser As SKYPE4COMLib.User
Set skUser = aSkype.User("user_name")
Set oChat = aSkype.CreateChatWith(skUser.Handle)
oChat.OpenWindow
oChat.SendMessage "message"
End Sub
Наблюдения: я использую опцию явно в каждом модуле, который я создаю.
Skype4COM 1.0 Type Library
в инструментах ›› ссылках? Он выбран? - person David Rushton   schedule 21.11.2017Set aSkype = CreateObject("SKYPE4COMLib.Skype")
. Это имеет значение? - person LocEngineer   schedule 21.11.2017Set aSkype = CreateObject("Skype4COM.Skype")
(обратите внимание на отсутствующую библиотеку) для поздней привязки. - person LocEngineer   schedule 22.11.2017regsvr32 skype4com.dll
. - person LocEngineer   schedule 22.11.2017HKCR\WOW6432Node\CLSID\{830690FC-BF2F-47A6-AC2D-330BCB402664}\InprocServer32
имеет путь по умолчаниюC:\PROGRA~2\COMMON~1\Skype\SKYPE4~1.DLL
и что он существует. - person Florent B.   schedule 01.12.2017CreateObject("new:{830690FC-BF2F-47A6-AC2D-330BCB402664}")
- person Florent B.   schedule 01.12.2017reg QUERY HKCR\WOW6432Node\CLSID\{830690FC-BF2F-47A6-AC2D-330BCB402664}\InprocServer32
из cmd, либо выполнитеregedit
для просмотра реестра. - person Florent B.   schedule 01.12.2017