powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как програмно проверить, зарегистрирован ли в системе OLE сервер?
4 сообщений из 4, страница 1 из 1
Как програмно проверить, зарегистрирован ли в системе OLE сервер?
    #32433816
LightWarrior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как програмно проверить, зарегистрирован ли в системе OLE сервер?
или как обработать ошибку возникающую при неудачном результате:

oXX=createobject("Server.class")
...
Рейтинг: 0 / 0
Как програмно проверить, зарегистрирован ли в системе OLE сервер?
    #32433891
Александр Третьяков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это работает у меня уже 2 месяца

IF udf_CheckWinProcess('class')=.t. or type('createobject("Server.class")') = 'O'
oComScanServ = CREATEOBJECT("Server.class")
endif

***********************************************
*** udf_CheckWinProcess Ïåðåâ³ðÿº ÷è çàïóùåíèé ïðîöåñ â ïàìÿò³
***********************************************
*? udf_CheckWinProcess('scanserv')
Function udf_CheckWinProcess(lcWinApplicationName)
LOCAL llResult
llResult = .F.
LOCAL ll1Process, lcReqString, lnProcReturn, lcFileName, lnHandler
DECLARE INTEGER CreateToolhelp32Snapshot IN Win32api INTEGER,INTEGER
lnHandler = CreateToolhelp32Snapshot(2,0)
DECLARE INTEGER Process32First IN Win32api INTEGER, STRING
DECLARE INTEGER Process32Next IN Win32api INTEGER, STRING
ll1Process = .T.
DO WHILE .T.
IF ll1Process
lcReqString = CHR(44) + CHR(1) + CHR(0) + CHR(0) + REPLICATE(CHR(0),296)
lnProcReturn = Process32First(lnHandler,@lcReqString)
ll1Process = .F.
ELSE
lnProcReturn = Process32Next(lnHandler,@lcReqString)
ENDIF
IF lnProcReturn = 0
EXIT
ENDIF
lcFileName = SUBSTR(lcReqString,37,100)
IF UPPER ( lcWinApplicationName ) $ UPPER ( lcFileName )
llResult = .T.
EXIT
ENDIF
ENDDO
RETURN llResult
ENDFUNC
...
Рейтинг: 0 / 0
Как програмно проверить, зарегистрирован ли в системе OLE сервер?
    #32433972
rst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как програмно проверить, зарегистрирован ли в системе OLE сервер?
Проверить наличие в реестре его ProgId.
Должна присутствовать ветка:
HKEY_CLASSES_ROOT\Server.class\
...
Рейтинг: 0 / 0
Как програмно проверить, зарегистрирован ли в системе OLE сервер?
    #32434051
LightWarrior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Благодарю, способ с реестром работает!
первый способ наверное тоже, но не проверял...
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как програмно проверить, зарегистрирован ли в системе OLE сервер?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]