1
0
mirror of https://github.com/wine-mirror/wine synced 2024-07-08 11:56:11 +00:00

Started implementation of the functions GetDefaultCommConfigA/W.

This commit is contained in:
Stefan Leichter 2000-07-08 18:29:54 +00:00 committed by Alexandre Julliard
parent 14a842761d
commit 00e7c3346d
2 changed files with 54 additions and 2 deletions

View File

@ -328,8 +328,8 @@ import ntdll.dll
310 stdcall GetDateFormatA(long long ptr str ptr long) GetDateFormatA
311 stdcall GetDateFormatW(long long ptr wstr ptr long) GetDateFormatW
312 stub GetDaylightFlag
313 stub GetDefaultCommConfigA
314 stub GetDefaultCommConfigW
313 stdcall GetDefaultCommConfigA(str ptr long) GetDefaultCommConfigA
314 stdcall GetDefaultCommConfigW(wstr ptr long) GetDefaultCommConfigW
315 stdcall GetDiskFreeSpaceA(str ptr ptr ptr ptr) GetDiskFreeSpaceA
316 stdcall GetDiskFreeSpaceW(wstr ptr ptr ptr ptr) GetDiskFreeSpaceW
317 stdcall GetDriveTypeA(str) GetDriveTypeA

View File

@ -2584,3 +2584,55 @@ BOOL WINAPI GetCommProperties(HANDLE hFile, LPCOMMPROP lpCommProp)
return TRUE;
}
/***********************************************************************
* GetDefaultCommConfigA (KERNEL32.313)
*/
BOOL WINAPI GetDefaultCommConfigA(LPCSTR lpszName,LPCOMMCONFIG lpCC,
LPDWORD lpdwSize)
{
LPDCB lpdcb = &(lpCC->dcb);
char temp[40];
if (strncasecmp(lpszName,"COM",3)) {
ERR("not implemented for <%s>\n", lpszName);
return FALSE;
}
if (!ValidCOMPort(lpszName[3]-'1'))
return FALSE;
TRACE("(%s %p %ld)\n", lpszName, lpCC, *lpdwSize );
if (*lpdwSize < sizeof(COMMCONFIG)) {
*lpdwSize = sizeof(COMMCONFIG);
return FALSE;
}
*lpdwSize = sizeof(COMMCONFIG);
lpCC->dwSize = sizeof(COMMCONFIG);
lpCC->wVersion = 1;
lpCC->dwProviderSubType = PST_RS232;
lpCC->dwProviderOffset = 0L;
lpCC->dwProviderSize = 0L;
(void) sprintf( temp, "COM%c:38400,n,8,1", lpszName[3]);
FIXME("setting %s as default\n", temp);
return BuildCommDCBA( temp, lpdcb);
}
/**************************************************************************
* GetDefaultCommConfigW (KERNEL32.314)
*/
BOOL WINAPI GetDefaultCommConfigW( LPCWSTR lpszName,LPCOMMCONFIG lpCC,
LPDWORD lpdwSize)
{
LPSTR lpszNameA;
BOOL ret;
TRACE("(%p,%p,%d)\n",lpszName,lpCC,*lpdwSize);
lpszNameA = HEAP_strdupWtoA( GetProcessHeap(), 0, lpszName );
ret=GetDefaultCommConfigA(lpszNameA,lpCC,lpdwSize);
HeapFree( GetProcessHeap(), 0, lpszNameA );
return ret;
}