Страница: 1 |
Страница: 1 |
Вопрос: Объекты в PB
Добавлено: 31.10.04 03:45
Автор вопроса: Brusco
Помогите разобраться! Вроде всё делаю как в справке написано, но чего-то не работает?!
DIM Reg AS DISPATCH
SET Reg = NEW DISPATCH IN "WScript.Shell"
OBJECT CALL Reg.RegWrite("Key", "Value")
Ответы
Всего ответов: 8
Номер ответа: 1
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #1
Добавлено: 31.10.04 05:57
А ты уверен что он поддерживает позднее связывание? Сделай лучше через интерфейсы, тем более что по ним хелп подробней.
Номер ответа: 2
Автор ответа:
alex
Вопросов: 84
Ответов: 453
Профиль | | #2
Добавлено: 01.11.04 09:55
PB поддерживает позднее связывание, только оно намного тормознее чем раннее. Может быть проблема с самим СОМ объектом, ты уверен что он установлен в системе?
Номер ответа: 3
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #3
Добавлено: 01.11.04 09:59
PB поддерживает позднее связывание
При чём тут PB? Ты явно не понял моего ответа.
Номер ответа: 4
Автор ответа:
Brusco
Вопросов: 5
Ответов: 12
Профиль | | #4
Добавлено: 06.11.04 02:39
В справке по PB описано два способа при работе с объектами и в обоих глючит на этой строке:
OBJECT CALL Reg.RegWrite("Key", "Value"
Номер ответа: 5
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #5
Добавлено: 08.11.04 14:02
Так ты пробовал интерфейс объявлять или нет?
Для просмотра методов и свойстd можно использовать pbrow.exe
Номер ответа: 6
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #6
Добавлено: 08.11.04 14:04
PowerBASIC COM Browser
\PBWin70\Bin\PBrow.exe
Номер ответа: 7
Автор ответа:
Brusco
Вопросов: 5
Ответов: 12
Профиль | | #7
Добавлено: 12.11.04 02:48
Вот набил код точно как в справке по PB написано:
MEMBER CALL RegWrite<&H7D1>IN NAME AS STRING<&H0>, IN Value AS VARIANT<&H1>, OPTIONAL IN TYPE AS VARIANT<&H2>
MEMBER CALL RegRead<&H7D0>IN NAME AS STRING<&H0> AS VARIANT
MEMBER CALL RegDelete<&H7D2>IN NAME AS STRING<&H0>
END INTERFACE
DIM Key AS VARIANT
 IM Value AS VARIANT
Key = "HKLM\Software\Microsoft\Windows\CurrentVersion\Run\SMSERIAL"
 IM Reg AS WScriptShell
SET Reg = WScriptShell IN "WScript.Shell"
IF ISFALSE ISOBJECT(Reg) THEN SET Reg = NEW WScriptShell IN "WScript.Shell"
OBJECT GET Reg.RegRead(Key) TO Value
Идёт без глюков, только не работает( - возвращает пустую строку!
Номер ответа: 8
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #8
Добавлено: 13.11.04 17:48
Хм, ну если не работает, то лучше на powerbasic.com спроси.
Я с этим WScript и VB не работал.