Показать сообщение отдельно
Старый 29.04.2007, 00:24   #1  
Blog bot is offline
Blog bot
Участник
 
25,497 / 847 (79) +++++++
Регистрация: 28.10.2006
aEremenko: Ответы на вопросы индийского коллеги
Источник: http://blogs.msdn.com/aeremenk/archi...8/2312179.aspx
==============

В последнее время так получилось, что периодически отвечаю на всякого рода вопросы типа HowTo. Иногда вопросы очень тривиальные, иногда нет. Думаю, что даже самые простые вопросы будут интересны, раз они были интересны моим коллегам. Так получилось, что больше всего таких вопросов приходит из Индии.
Итак, вопрос 1.
Q:  А как узнать под каким пользователем запущен сервис AOS в DAX 4?
A: Создаем нижеследующий метод в классе WinAPIServer, затем вызываем его.
#define.retvalSize(255)
public server static str getServiceUserName ()
{
    DLLFunction         _getUserNameW ;
    Binary              bSize   = new Binary(#SizeOfInt);
    Binary              bStr    = new Binary(#retvalSize*2); // room for retvalSize TCHARs
    DLL                _DLL;
    InteropPermission   interopPerm;
 
    // get dll interop permission
    interopPerm = new InteropPermission(InteropKind::DllInterop);
    interopPerm.assert();
 
    bSize.dWord(#Offset0,#retvalSize);
 
    _DLL          = new DLL(#ADVAPI32DLL);
    _getUserNameW = new DLLFunction(_DLL, 'GetUserNameW');
    _getUserNameW .returns(ExtTypes::DWord);
    _getUserNameW .arg(ExtTypes::Pointer,
                           ExtTypes::Pointer);
 
    if (_getUserNameW .call(bStr,bSize))
    {
        return bStr.wString(#Offset0);
    }
 
    return '';
}


Источник: http://blogs.msdn.com/aeremenk/archi...8/2312179.aspx
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору.