При переходе с WinXP на Win7 перестал работать VB-скрипт (выполняется под Windows Script Host).
Set TheBrowser = WScript.CreateObject("InternetExplorer.Application")
...
TheBrowser.Navigate(fProgName)
While TheBrowser.Busy
Wend
TheBrowser.Visible = True
For ServiceIndex = 0 To UBound(Services,2)-1
...
TheBrowser.Document.All("set" & CStr(ServiceIndex) & "1").Checked = False
...
Next
В строке TheBrowser.Document.All("set" & CStr(ServiceIndex) & "1").Checked = False возникает сообщение об ошибке:
Сценарий: ...
Строка: ...
Символ: ...
Ошибка: Неизвестный интерфейс.
Код: 800706B5
Источник: (null)
Под WinXP все работало корректно.
Кто-нибудь сталкивался с подобной проблемой?
В чем может быть ошибка (ДНК не предлагать)?
Здравствуйте, Raudulv, Вы писали:
R>При переходе с WinXP на Win7 перестал работать VB-скрипт (выполняется под Windows Script Host).
R>...
R>Кто-нибудь сталкивался с подобной проблемой?
Я не сталкивался, но вот тебе ключевые слова, которые помогут поискать в Инете (возможно, найдёшь свою ситуацию):
// MessageId: RPC_S_UNKNOWN_IF
//
// MessageText:
//
// The interface is unknown.
//
#define RPC_S_UNKNOWN_IF 1717L // 0x6B5 - Сишный, &H6B5 - VBшный
Попробуй также сложное выражение разбить на простые и определить какой вызов сбивается в TheBrowser.Document.All("...").Checked.
Здравствуйте, Vi2, Вы писали:
Vi2>Здравствуйте, Raudulv, Вы писали:
R>>При переходе с WinXP на Win7 перестал работать VB-скрипт (выполняется под Windows Script Host).
R>>...
R>>Кто-нибудь сталкивался с подобной проблемой?
Vi2>Я не сталкивался, но вот тебе ключевые слова, которые помогут поискать в Инете (возможно, найдёшь свою ситуацию):
Vi2>Vi2>// MessageId: RPC_S_UNKNOWN_IF
Vi2>//
Vi2>// MessageText:
Vi2>//
Vi2>// The interface is unknown.
Vi2>//
Vi2>#define RPC_S_UNKNOWN_IF 1717L // 0x6B5 - Сишный, &H6B5 - VBшный
Vi2>
Vi2>Попробуй также сложное выражение разбить на простые и определить какой вызов сбивается в TheBrowser.Document.All("...").Checked.
Vi2, спасибо, разбираюсь.
Пока выяснил, что подобная ошибка выдается при некоторых обращениях вида TheBrowser.XXX:
TheBrowser.Document
TheBrowser.Quit
но при этом нормально срабатывает последовательность:
TheBrowser.Left=0
TheBrowser.Top = 50
TheBrowser.Height = 600
TheBrowser.Width = 600
TheBrowser.Menubar = 0
TheBrowser.Toolbar = 0
TheBrowser.Statusbar = 0
TheBrowser.Resizable = 0
TheBrowser.Navigate(fProgName)
While TheBrowser.Busy
Wend
TheBrowser.Visible = True
Поиск по
The interface is unknown показал пока, что проблема возникает прицельно под Win7x86 с IE8 и связана, скорее всего, с безопасностью.