Call Clarion Object Class Method PROCEDURE with GROUP Type Variable

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Developer
Ветеран
Сообщения: 551
Зарегистрирован: 26 Март 2012, 17:18

Call Clarion Object Class Method PROCEDURE with GROUP Type Variable

Сообщение Developer »

Привет всем!

Clarion 10.0.12278

Шаблон CapeSoft SelfService

Код: Выделить всё

SS_SERVICE_STATUS           group, type   ! API Type
ServiceType                   SS_ULONGX
CurrentState                  SS_ULONGX
ControlsAccepted              SS_ULONGX
Win32ExitCode                 SS_ULONGX
ServiceSpecificExitCode       SS_ULONGX
CheckPoint                    SS_ULONGX
WaitHint                      SS_ULONGX
                            end

MyService            Class(),Type,DLL(SelfServiceDLLMode)
! Methods
GetServiceStatus       PROCEDURE (string p_ServiceName, *SS_SERVICE_STATUS p_ServiceStatus, long p_Silent=1),long,proc ,VIRTUAL

MyService.GetServiceStatus  PROCEDURE  (string p_ServiceName, *SS_SERVICE_STATUS p_ServiceStatus, long p_Silent=1) ! Declare Procedure


gSelfService         Class(MyService)
GetServiceStatus       PROCEDURE (string p_ServiceName, *SS_SERVICE_STATUS p_ServiceStatus, long p_Silent=1),long,proc ,VIRTUAL

gSelfService.GetServiceStatus     PROCEDURE (string p_ServiceName, *SS_SERVICE_STATUS p_ServiceStatus, long p_Silent=1)

 CODE
 gSelfService.ServiceName = clip('NTServiceCapeSoftApplication')

 gSelfService.GetServiceStatus(gSelfService.ServiceName,SS_SERVICE_STATUS.CurrentState ,1)
gSelfService.GetServiceStatus(gSelfService.ServiceName,SS_SERVICE_STATUS.CurrentState ,1) - No matching prototype available :(
gSelfService.GetServiceStatus(gSelfService.ServiceName,SS_SERVICE_STATUS ,1) Cannot use TYPEd structure in this way :(
Вопрос: как правильно оформить обращение к объекту gSelfService.GetServiceStatus для получения всех значений переменной
SS_SERVICE_STATUS - состояния службы Windows?
С Уважением, Developer
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3133
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Call Clarion Object Class Method PROCEDURE with GROUP Type Variable

Сообщение Дед Пахом »

Ну так SS_SERVICE_STATUS объявлена как тип, а надо передать переменную.
С уважением, ДП
Developer
Ветеран
Сообщения: 551
Зарегистрирован: 26 Март 2012, 17:18

Call Clarion Object Class Method PROCEDURE with GROUP Type Variable

Сообщение Developer »

Михаил - спасибо за отклик - приведи конкретный пример - пожалуйста :wink:
С Уважением, Developer
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3133
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Call Clarion Object Class Method PROCEDURE with GROUP Type Variable

Сообщение Дед Пахом »

s LIKE(SS_SERVICE_STATUS)
С уважением, ДП
Developer
Ветеран
Сообщения: 551
Зарегистрирован: 26 Март 2012, 17:18

Call Clarion Object Class Method PROCEDURE with GROUP Type Variable

Сообщение Developer »

Михаил спасибо! - получилось :D
С Уважением, Developer
Ответить