我有一個windows服務正在其服務main函數中創建一個命名管道。代碼段低於:如何通過其他程序訪問Windows服務對象
void WINAPI ServiceMain(DWORD argc, LPTSTR *argv)
{
DWORD status;
DWORD specificError;
m_ServiceStatus.dwServiceType = SERVICE_WIN32;
m_ServiceStatus.dwCurrentState = SERVICE_START_PENDING;
m_ServiceStatus.dwControlsAccepted = SERVICE_ACCEPT_STOP;
m_ServiceStatus.dwWin32ExitCode = 0;
m_ServiceStatus.dwServiceSpecificExitCode = 0;
m_ServiceStatus.dwCheckPoint = 0;
m_ServiceStatus.dwWaitHint = 0;
m_ServiceStatusHandle = RegisterServiceCtrlHandler("myService",
ServiceCtrlHandler);
if (m_ServiceStatusHandle == (SERVICE_STATUS_HANDLE)0)
{
return;
}
m_ServiceStatus.dwCurrentState = SERVICE_RUNNING;
m_ServiceStatus.dwCheckPoint = 0;
m_ServiceStatus.dwWaitHint = 0;
if (!SetServiceStatus (m_ServiceStatusHandle, &m_ServiceStatus))
{
}
CraeteNamedPipe();
return;
}
的CraeteNamedPipe
函數創建一個命名管道\\.\pipe\1stPipe
。
我能夠在我的XP機器上成功安裝和運行我的服務。
現在我如何使用其他程序訪問指定管道\\.\pipe\1stPipe
。
任何代碼片段或示例文章都會有幫助。
那麼,我告訴abt肌酸和命名管道的方法。但是我需要知道如何訪問存在於窗口服務中的對象(現在它是一個NamedPipe)。 – Simsons 2010-09-03 09:00:34