Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как вызвать окно Object Picker? / 1 сообщений из 1, страница 1 из 1
02.03.2005, 21:10
    #32942414
legekdd
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать окно Object Picker?
Для C++ в MSDN написано следующее:

IDsObjectPicker *pDsObjectPicker = NULL;
IDataObject *pdo = NULL;

hr = CoInitialize(NULL);

// Create an instance of the object picker.
hr = CoCreateInstance(CLSID_DsObjectPicker, NULL, CLSCTX_INPROC_SERVER, IID_IDsObjectPicker, (void**) &pDsObjectPicker);

if(SUCCEEDED(hr))
{
// Initialize the object picker instance.
hr = InitObjectPicker(pDsObjectPicker);
if(SUCCEEDED(hr))
{
HWND hwndParent = GetConsoleWindow(); // Supply a window handle to the application.

// Invoke the modal dialog box.
hr = pDsObjectPicker->InvokeDialog(hwndParent, &pdo);
if (hr == S_OK)
{
ProcessSelectedObjects(pdo);
pdo->Release();
}
else if (hr == S_FALSE)
{
printf("User canceled object picker dialog\n");
}
}
}
--------------------------
Ну, а затем выводим то, что было выбрано в окне Object Picker:

for (i = 0; i < pDsSelList->cItems; i++)
{
printf("Object %u\n", i);
printf(" Name '%ws'\n", pDsSelList->aDsSelection .pwzName);
printf(" Class '%ws'\n", pDsSelList->aDsSelection.pwzClass);
printf(" Path '%ws'\n", pDsSelList->aDsSelection.pwzADsPath);
printf(" UPN '%ws'\n", pDsSelList->aDsSelection.pwzUPN);
}

Собственно, как то-же самое сделать в Visual Foxpro, зная CLSID?
Вариант oPickedUsers = GetObject("DsObjectPicker") не работает ;(
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как вызвать окно Object Picker? / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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