Author: gedmurphy Date: Thu Sep 20 17:26:19 2007 New Revision: 29117
URL: http://svn.reactos.org/svn/reactos?rev=29117&view=rev Log: - use correct name when registering. - use unicode apis exclusively when required. - fix rbuild file
Modified: trunk/reactos/base/services/audiosrv/audiosrv.h trunk/reactos/base/services/audiosrv/audiosrv.rbuild trunk/reactos/base/services/audiosrv/main.c trunk/reactos/base/services/audiosrv/pnp.c trunk/reactos/base/services/audiosrv/pnp_list_manager.c
Modified: trunk/reactos/base/services/audiosrv/audiosrv.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/audiosrv/audi... ============================================================================== --- trunk/reactos/base/services/audiosrv/audiosrv.h (original) +++ trunk/reactos/base/services/audiosrv/audiosrv.h Thu Sep 20 17:26:19 2007 @@ -13,19 +13,6 @@ #define AUDIOSRV_PRIVATE_H
extern SERVICE_STATUS_HANDLE service_status_handle; - - -/* main.c */ - -VOID CALLBACK -ServiceMain(DWORD argc, char** argv); - -DWORD WINAPI -ServiceControlHandler( - DWORD dwControl, - DWORD dwEventType, - LPVOID lpEventData, - LPVOID lpContext);
/* List management (pnp_list_manager.c) */
Modified: trunk/reactos/base/services/audiosrv/audiosrv.rbuild URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/audiosrv/audi... ============================================================================== --- trunk/reactos/base/services/audiosrv/audiosrv.rbuild (original) +++ trunk/reactos/base/services/audiosrv/audiosrv.rbuild Thu Sep 20 17:26:19 2007 @@ -1,7 +1,7 @@ -<module name="audiosrv" type="win32cui" installbase="system32" -installname="audiosrv.exe" allowwarnings="true"> +<?xml version="1.0"?> +<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd"> +<module name="audiosrv" type="win32cui" installbase="system32" installname="audiosrv.exe" unicode="yes" allowwarnings="true"> <include base="audiosrv">.</include> - <define name="UNICODE" /> <define name="__USE_W32API" /> <define name="__REACTOS__" /> <define name="_WIN32_WINNT">0x0501</define> @@ -9,6 +9,7 @@ <library>kernel32</library> <library>advapi32</library> <library>user32</library> + <library>ntdll</library> <library>setupapi</library> <file>main.c</file> <file>pnp_list_manager.c</file>
Modified: trunk/reactos/base/services/audiosrv/main.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/audiosrv/main... ============================================================================== --- trunk/reactos/base/services/audiosrv/main.c (original) +++ trunk/reactos/base/services/audiosrv/main.c Thu Sep 20 17:26:19 2007 @@ -10,15 +10,6 @@
#include <audiosrv/audiosrv.h> #include "audiosrv.h" - - -/* Service table */ - -SERVICE_TABLE_ENTRY service_table[2] = -{ - { L"AudioSrv", (LPSERVICE_MAIN_FUNCTION) ServiceMain }, - { NULL, NULL } -};
SERVICE_STATUS_HANDLE service_status_handle; SERVICE_STATUS service_status; @@ -88,13 +79,13 @@ }
VOID CALLBACK -ServiceMain(DWORD argc, char** argv) +ServiceMain(DWORD argc, LPWSTR argv) { logmsg("* Service starting\n"); logmsg("Registering service control handler...\n"); - service_status_handle = RegisterServiceCtrlHandlerEx(SERVICE_NAME, - ServiceControlHandler, - NULL); + service_status_handle = RegisterServiceCtrlHandlerExW(SERVICE_NAME, + ServiceControlHandler, + NULL);
logmsg("Service status handle %d\n", service_status_handle); if ( ! service_status_handle ) @@ -165,9 +156,17 @@ SetServiceStatus(service_status_handle, &service_status); }
-int main() +int wmain() { + SERVICE_TABLE_ENTRYW service_table[] = + { + { SERVICE_NAME, (LPSERVICE_MAIN_FUNCTIONW) ServiceMain }, + { NULL, NULL } + }; + logmsg("Audio Service main()\n"); - StartServiceCtrlDispatcher(service_table); + if (!StartServiceCtrlDispatcherW(service_table)) + logmsg("StartServiceCtrlDispatcher failed\n"); + return 0; }
Modified: trunk/reactos/base/services/audiosrv/pnp.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/audiosrv/pnp.... ============================================================================== --- trunk/reactos/base/services/audiosrv/pnp.c (original) +++ trunk/reactos/base/services/audiosrv/pnp.c Thu Sep 20 17:26:19 2007 @@ -30,20 +30,20 @@ { SP_DEVICE_INTERFACE_DATA interface_data; SP_DEVINFO_DATA device_data; - PSP_DEVICE_INTERFACE_DETAIL_DATA detail_data; + PSP_DEVICE_INTERFACE_DETAIL_DATA_W detail_data; HDEVINFO dev_info; DWORD length; int index = 0;
const GUID category_guid = {STATIC_KSCATEGORY_AUDIO};
- dev_info = SetupDiGetClassDevsEx(&category_guid, - NULL, - NULL, - DIGCF_PRESENT | DIGCF_DEVICEINTERFACE, - NULL, - NULL, - NULL); + dev_info = SetupDiGetClassDevsExW(&category_guid, + NULL, + NULL, + DIGCF_PRESENT | DIGCF_DEVICEINTERFACE, + NULL, + NULL, + NULL);
/* printf("%s:\n", ClassString); */
@@ -57,9 +57,9 @@ + (MAX_PATH * sizeof(WCHAR));
detail_data = - (PSP_DEVICE_INTERFACE_DETAIL_DATA)HeapAlloc(GetProcessHeap(), - 0, - length); + (PSP_DEVICE_INTERFACE_DETAIL_DATA_W)HeapAlloc(GetProcessHeap(), + 0, + length);
while ( SetupDiEnumDeviceInterfaces(dev_info, @@ -73,15 +73,15 @@ ZeroMemory(detail_data, length);
/* NOTE: We don't actually use device_data... */ - detail_data->cbSize = sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA); + detail_data->cbSize = sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA_W); device_data.cbSize = sizeof(device_data); device_data.Reserved = 0; - SetupDiGetDeviceInterfaceDetail(dev_info, - &interface_data, - detail_data, - length, - NULL, - &device_data); + SetupDiGetDeviceInterfaceDetailW(dev_info, + &interface_data, + detail_data, + length, + NULL, + &device_data);
list_node = CreateDeviceDescriptor(detail_data->DevicePath, TRUE); AppendAudioDeviceToList(list_node); @@ -133,9 +133,9 @@ notification_filter.dbcc_classguid = wdmaud_guid;
device_notification_handle = - RegisterDeviceNotification((HANDLE) service_status_handle, - ¬ification_filter, - DEVICE_NOTIFY_SERVICE_HANDLE + RegisterDeviceNotificationW((HANDLE) service_status_handle, + ¬ification_filter, + DEVICE_NOTIFY_SERVICE_HANDLE /* | DEVICE_NOTIFY_ALL_INTERFACE_CLASSES*/);
Modified: trunk/reactos/base/services/audiosrv/pnp_list_manager.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/audiosrv/pnp_... ============================================================================== --- trunk/reactos/base/services/audiosrv/pnp_list_manager.c (original) +++ trunk/reactos/base/services/audiosrv/pnp_list_manager.c Thu Sep 20 17:26:19 2007 @@ -114,12 +114,12 @@
logmsg("Creating file mapping\n"); /* Expose our device list to the world */ - device_list_file = CreateFileMapping(INVALID_HANDLE_VALUE, - NULL, - PAGE_READWRITE, - 0, - max_size, - AUDIO_LIST_NAME); + device_list_file = CreateFileMappingW(INVALID_HANDLE_VALUE, + NULL, + PAGE_READWRITE, + 0, + max_size, + AUDIO_LIST_NAME);
if ( ! device_list_file ) {