FeatureInfo(FeatureName: String): ILicenseFeatureInfo;
FeatureInfo(System.String): Prognoz.Platform.Interop.Host.ILicenseFeatureInfo;
FeatureName. Наименование единицы лицензирования.
Метод FeatureInfo получает информацию о единице лицензирования.
Для выполнения примера разместите на форме компоненты Button, Editbox и Memo с наименованиями «Button1», «Editbox1» и «Memo1» соответственно.
Добавьте ссылки на системные сборки: Host, Ui, Forms, Collections.
Пример является обработчиком события OnClick для компонента «Button1».
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
LicManager: ILicenseManager;
Feature: String;
FeatureInfo: ILicenseFeatureInfo;
Info: IStringList;
Begin
LicManager := WinApplication.Instance.LicenseManager;
Feature := EditBox1.Text;
FeatureInfo := LicManager.FeatureInfo(Feature);
Memo1.Clear;
Info := Memo1.Lines;
If FeatureInfo <> Null Then
Info.Add("Наименование ед.лиц.: " + FeatureInfo.FeatureName);
Info.Add("Описание лицензии: " + FeatureInfo.Description);
Info.Add("Kод привязки: " + FeatureInfo.ClientLockInfo);
Info.Add("Возможность получения локальной лицензии: " + FeatureInfo.CommuterAllowed.ToString);
Info.Add("Начало действия: " + FeatureInfo.StartDate.ToString);
Info.Add("Окончание действия: " + FeatureInfo.ExpireDate.ToString);
Info.Add("Тип лицензии (0-Standalone/1-NetWork): " + FeatureInfo.LicenseMode.ToString);
Info.Add("Демо или постоянная (0)/триальная (1): " + FeatureInfo.LicenseType.ToString);
Info.Add("Тип привязки (0-Unlocked;1-ClientLocked;2-ServerLocked): " + FeatureInfo.LockType.ToString);
Info.Add("Длина триального периода: " + FeatureInfo.TrialDaysCount.ToString);
Info.Add("Ограниченная(False)/Неограниченная(True) лицензия: " + FeatureInfo.NoExpiration.ToString);
Info.Add("Количество дней до окончания действия лицензии: " + FeatureInfo.DaysLeft.ToString);
Info.Add("Имя сервера лицензий: " + LicManager.Server);
Info.Add("Номер лицензии: " + FeatureInfo.LicenseIds.AsString);
Else
Info.Add("Информация о лицензии = Null");
End If;
End Sub Button1OnClick;
Введите в Editbox наименование предустановленной единицы лицензирования, например PP_OLAP, и нажмите на кнопку. В Memo1 будет выведена информация об указанной единице лицензирования.
Для выполнения примера разместите на форме компоненты Button и два TextBox с наименованиями «Button1», «TextBox1» и «TextBox2» соответственно. Для второго TextBox2 установите свойство Multiline в True.
Добавьте ссылки на системные сборки: Host, Ui, Fore, ForeSystem.
Пример является обработчиком события OnClick для компонента «Button1».
Imports Prognoz.Platform.Interop.Host;
Imports Prognoz.Platform.Interop.Ui;
Imports Prognoz.Platform.Interop.Fore;
Imports Prognoz.Platform.Interop.ForeSystem;
Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
WinApp: WinApplicationClassClass = New WinApplicationClassClass();
Svc: IForeServices;
RunContext: ForeRuntimeContext;
LicManager: ILicenseManager;
Feature: String;
FeatureInfo: ILicenseFeatureInfo;
Info: List<String> = New List<string>();
Begin
Svc := Self.Metabase As IForeServices;
RunContext := Svc.GetRuntime().Context;
LicManager := WinApp.Instance[RunContext].LicenseManager;
Feature := textBox1.Text;
FeatureInfo := LicManager.FeatureInfo(Feature);
textBox2.Clear();
If FeatureInfo <> Null Then
Info.Add("Наименование ед.лиц.: " + FeatureInfo.FeatureName);
Info.Add("Описание лицензии: " + FeatureInfo.Description);
Info.Add("Kод привязки: " + FeatureInfo.ClientLockInfo);
Info.Add("Возможность получения локальной лицензии: " + FeatureInfo.CommuterAllowed.ToString());
Info.Add("Начало действия: " + FeatureInfo.StartDate.ToString());
Info.Add("Окончание действия: " + FeatureInfo.ExpireDate.ToString());
Info.Add("Тип лицензии (0-Standalone/1-NetWork): " + FeatureInfo.LicenseMode.ToString());
Info.Add("Демо или постоянная (0)/триальная (1): " + FeatureInfo.LicenseType.ToString());
Info.Add("Тип привязки (0-Unlocked;1-ClientLocked;2-ServerLocked): " + FeatureInfo.LockType.ToString());
Info.Add("Длина триального периода: " + FeatureInfo.TrialDaysCount.ToString());
Info.Add("Ограниченная(False)/Неограниченная(True) лицензия: " + FeatureInfo.NoExpiration.ToString());
Info.Add("Количество дней до окончания действия лицензии: " + FeatureInfo.DaysLeft.ToString());
Info.Add("Имя сервера лицензий: " + LicManager.Server);
Info.Add("Номер лицензии: " + FeatureInfo.LicenseIds);
Else
Info.Add("Информация о лицензии = Null");
End If;
textBox2.Lines := info.ToArray();
End Sub;
Результат выполнения примера Fore.NET совпадает с примером Fore.
См. также: