29.04.2007, 00:24 | #1 |
Участник
|
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, напишите личное сообщение администратору. |
|
Теги |
winapi |
|
|