Форум программистов, компьютерный форум CyberForum.ru

Попытка получения запущенных процессов на удалённом компьютере - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Можно ли с помощью хуков перехватывать вызовы функций из DLL? http://www.cyberforum.ru/cpp-beginners/thread497543.html
Привет народ! Для одного проекта ;) мне понадобилось перехватывать функцию, находящуюся в DLL (а точнее в kernel32.dll, т.е. WinAPI-функцию). Видел драйвер, скрывающий процесс, и еще кой-чего но все было написано на асме. Возможен ли перехват API-хи с помощью хуков?
C++ Изменение ключей реестра Windows Мне необходимо в реестре поменять IpAdress В пути к соотв. переменной реестра есть ключ AEF37A0A-E385-4BAD-B228-34FD29980B5C Я так понимаю - он генерится системой и различен для разных машин. Подскажите, пожалуйста, какие есть способы программно определить каков этот ключ для данной машины? Спасибо! http://www.cyberforum.ru/cpp-beginners/thread497526.html
Как расшарить диск(папку) и получить имя компа на котором выполняется приложение? C++
Вот как это сделать? Ведь просто нужно юзать какие-то API-шные функции. А какие и как? Заранее всем благодарен за ответ.
C++ Вакансия программист С++ в Москве
В динамично развивающуюся компанию по разработке игровых программ требуется праграммист С/С++. Можно неоконченное высшее, в/о, 19-30 лет, знание Win32 API, умение работать с потоками и их синхронизация. Работа с графикой и звуком. Разработка ПО на платформе Win32 на С/С++. Оформление по ТК, з/п 700-1200 у.е., возможен гибкий график. Резюме на lina@profil.ru, тел. 239-93-47 Илона.
C++ Изменение параметров Windows(NT/2000/XP) http://www.cyberforum.ru/cpp-beginners/thread497426.html
Подскажите, пожалуйста, кто-нибудь - существуют ли функции позволяющие изменить такие параметры локальной машины как: 1). Время ожидания загрузки системы (то что в boot.ini сидит); 2). Переменную окружения Path системы в целом, а не только текущего процесса; 3). Раскладку клавиатуры, используемую по умолчанию; 4). Статический IP-адрес сетевой платы; 5). Локальные политики (нужно...
C++ Подскажите freeware-ный CheckedListbox ActiveX (-) a подробнее

Показать сообщение отдельно
another
0 / 0 / 0
Регистрация: 22.12.2010
Сообщений: 37
02.08.2011, 16:59     Попытка получения запущенных процессов на удалённом компьютере
При попытке получить список запущенных процессов, прога завершается авариино.
Под дебагом говорит что какие-то проблемы в переменной spServices.
Может кто-нибудь подскажет где собака порылась?
Вот код:

try
{
TCHAR szServer[256];
_bstr_t bstrServer;
IWbemLocatorPtr spLocator;
IWbemServicesPtr spServices(NULL);
IEnumWbemClassObjectPtr spEnum(NULL);
IWbemClassObjectPtr spObject(NULL);
ULONG ulCount;
CString m_strText;

memset(szServer,0,sizeof(szServer));

// create a WBEM locator object
hRes=CoCreateInstance(__uuidof(WbemLocator), NULL,
CLSCTX_INPROC_SERVER, __uuidof(IWbemLocator),
(PVOID *)&spLocator);

if(FAILED(hRes))
_com_issue_error(hRes);

//m_strMachineName - the name of the remote computer

if(m_strMachineName.IsEmpty())
lstrcpy(szServer, _T('root\cimv2'));
else
wsprintf(szServer, _T('%s\root\cimv2'),m_strMachineName);

hRes=spLocator->ConnectServer(_bstr_t(szServer),NULL,
NULL, NULL, 0, NULL, NULL, &spServices);

if(FAILED(hRes))
_com_issue_error(hRes);

// create an enumerator of processes
hRes=spServices->CreateInstanceEnum(_bstr_t(L'Win32_Process'),
WBEM_FLAG_SHALLOW|WBEM_FLAG_FORWARD_ONLY,NULL, &spEnum);

if(FAILED(hRes))
_com_issue_error(hRes);

// walk through all processes
while(spEnum->Next(WBEM_INFINITE, 1, &spObject, &ulCount) == S_OK)
{
_variant_t valId;
_variant_t valName;

// retrieve process name
hRes = spObject->Get(L'Name', 0, &valName, NULL, NULL);
if (FAILED(hRes))
{
spObject = NULL;
continue;
}

// retrieve process identifier
hRes=spObject->Get(L'ProcessId', 0, &valId, NULL, NULL);

if(FAILED(hRes))
{
spObject = NULL;
continue;
}

_ASSERTE(valId.vt == VT_I4);
_ASSERTE(valName.vt == VT_BSTR);

// Output data
m_ListCtrl.InsertItem((LPCTSTR)_bstr_t(valName));
m_strText.Format(TEXT('%u'),valId.lVal);
m_ListCtrl.SetItemText(1,m_strText);

spObject = NULL;
}
}
catch(_com_error& err)
{
SetLastError(err.Error());
MessageBox(err.ErrorMessage());
}

Спасибо!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru