FindWindow和SendMessage用于自动身份验证

时间:2013-10-30 16:35:27

标签: excel vba authentication sendmessage findwindow

我有一个需要加载项的Excel自动化任务。使用加载项需要单独的身份验证。

无法通过我的凭据。我必须在加载项加载时手动进行身份验证。因为老式的方式启动了一个新的(未经身份验证的)实例,所以我无法弄清楚如何完全自动化需要加载项的任务。

我知道我可以使用getObject在Excel中使用此加载项对象来查找加载项名称:

For i = 1 To AddIns.Count
 Debug.Print (AddIns(i).Name)
 Debug.Print (AddIns(i).FullName)
 Debug.Print (AddIns(i).Title)
 Debug.Print (AddIns(i).Installed)
 Debug.Print (AddIns(i).FullName)
Next

这将显示加载项名称,我可以使用

在其中找到加载项
Set MyObject = AddIns("addin name")

或使用findWindow(Windows API)查找加载项实例

hWnd = FindWindow(vbNullString, "Add-in Login Window Title")

WindowsAPI getobject上的引用链接以及Findwindows和SendMessage的引用函数 http://msdn.microsoft.com/en-us/library/office/gg251785(v=office.14).aspx

addin登录窗口如下所示:

enter image description here

我不知道如何通过引用对象或HWND将凭据传递给此加载项窗口。

有一些有用的帖子:Open an Excel file in running instance of Excel with Task Scheduler。和Open an Excel file in running instance of Excel with Task Scheduler

如何通过Windows API进行身份验证,不一定通过VBA进行身份验证?我也可以使用Python。

0 个答案:

没有答案