Чтение свойств тега в С-фунции WinCC
Evgen; 17.6.04

Подскажите, пожалуйста, как достать нижнее, верхнее значение тега в С-функции. И вообще механизм извлечения свойств тега (Process value range, Tag value range, Upper limit, Lower limit, ...)

Re: Чтение свойств тега в С-фунции WinCC
Alexis; 18.6.04

смотри DMGetVarLimits

Re: Чтение свойств тега в С-фунции WinCC
Evgen; 18.6.04

а можно привести хоть какой-нибудь простенький пример ?

Re: Чтение свойств тега в С-фунции WinCC
Evgen; 18.6.04

... а если не в С-функции ?

Re: Чтение свойств тега в С-фунции WinCC
Alexis; 18.6.04

Пример есть в ОДКе.

Простенький пример:
TCHAR szPrj[_MAX_PATH+1];
if ( DMGetRuntimeProject(szPrj,_MAX_PATH,...) )
{
DM_VARKEY dmvk;
dmvk.dwKeyType=DM_VARKEY_NAME;
lstrcpy(dmvk.szName,"имя тэга");
DM_VARLIMIT dmvl;
ZeroMemory(&dmvl,sizeof(dmvl));
if ( DMGetVarLimits(szPrj,&dmvk,1,&dmvl,...) )
{
// ну и разбираемся чего получили
}
// variant-ы DM_VARLIMIT еще чистим до кучи
}
вроде должно работать :))
Re: Чтение свойств тега в С-фунции WinCC
Evgen; 18.6.04

Спасибо, Alexis.

Вы, конечно меня простите, но хоть что-нибудь о преобразовании VARIANT к Int, char* , ... Описания ODK у меня нет вообще. Искал в Сети - впустую. На всякий случай мой e-mail: evgen@diya.alicetele.com
Re: Чтение свойств тега в С-фунции WinCC
Alexis; 21.6.04

HRESULT VariantChangeType(

VARIANTARG * pvargDest,
VARIANTARG * pvarSrc,
unsigned short wFlags,
VARTYPE vt
);

Parameters:

pvargDest
A pointer to the coerced argument. If this is the same as pvarSrc, the variant will be converted in place.

pvarSrc
A pointer to the argument to be coerced.

wFlags
Flags that control the coercion. Acceptable values are:
VARIANT_NOVALUEPROP. Prevents the function from attempting to coerce an object to a fundamental type by getting the Value property. Applications should set this flag only if necessary, because it makes their behavior inconsistent with other applications.
VARIANT_ALPHABOOL. Converts a VT_BOOL value to a string containing either "True" or "False".
VARIANT_NOUSEROVERRIDE. For conversions to or from VT_BSTR, passes LOCALE_NOUSEROVERRIDE to the core coercion routines.
VARIANT_LOCALBOOL. For conversions from VT_BOOL to VT_BSTR and back, uses the language specified by the locale in use on the local computer.

vt
The type to coerce to. If the return code is S_OK, the vt field of the *pvargDest is always the same as this value.<<br>