winmm: dwBytesRecorded controls how much is played, not dwBufferLength.
[wine/hramrach.git] / dlls / avrt / main.c
blob111ffcd58cbc90a3b6cd2953a6962905b02d249e
1 /* Avrt dll implementation
3 * Copyright (C) 2009 Maarten Lankhorst
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20 #include "config.h"
22 #include <stdarg.h>
24 #include "windef.h"
25 #include "winbase.h"
26 #include "winnls.h"
27 #include "wine/debug.h"
28 #include "avrt.h"
30 WINE_DEFAULT_DEBUG_CHANNEL(avrt);
32 BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
34 TRACE("(0x%p, %d, %p)\n", hinstDLL, fdwReason, lpvReserved);
36 switch (fdwReason)
38 case DLL_WINE_PREATTACH:
39 return FALSE; /* prefer native version */
40 case DLL_PROCESS_ATTACH:
41 DisableThreadLibraryCalls(hinstDLL);
42 break;
43 case DLL_PROCESS_DETACH:
44 break;
47 return TRUE;
50 HANDLE WINAPI AvSetMmThreadCharacteristicsA(LPCSTR TaskName, LPDWORD TaskIndex)
52 HANDLE ret;
53 LPWSTR str = NULL;
55 if (TaskName)
57 DWORD len = (lstrlenA(TaskName)+1);
58 str = HeapAlloc(GetProcessHeap(), 0, len*sizeof(WCHAR));
59 if (!str)
61 SetLastError(ERROR_OUTOFMEMORY);
62 return NULL;
64 MultiByteToWideChar(CP_ACP, 0, TaskName, len, str, len);
66 ret = AvSetMmThreadCharacteristicsW(str, TaskIndex);
67 HeapFree(GetProcessHeap(), 0, str);
68 return ret;
71 HANDLE WINAPI AvSetMmThreadCharacteristicsW(LPCWSTR TaskName, LPDWORD TaskIndex)
73 FIXME("(%s,%p): stub\n", debugstr_w(TaskName), TaskIndex);
75 if (!TaskName)
77 SetLastError(ERROR_INVALID_TASK_NAME);
78 return NULL;
80 if (!TaskIndex)
82 SetLastError(ERROR_INVALID_HANDLE);
83 return NULL;
85 return (HANDLE)0x12345678;
88 BOOL WINAPI AvRevertMmThreadCharacteristics(HANDLE AvrtHandle)
90 FIXME("(%p): stub\n", AvrtHandle);
91 return 1;
94 BOOL WINAPI AvSetMmThreadPriority(HANDLE AvrtHandle, AVRT_PRIORITY prio)
96 FIXME("(%p)->(%u) stub\n", AvrtHandle, prio);
97 return 1;