scrrun: Implement DriveLetter property for a drive.
This commit is contained in:
parent
61a3bd3302
commit
c824cfa08c
|
@ -687,8 +687,17 @@ static HRESULT WINAPI drive_get_Path(IDrive *iface, BSTR *path)
|
|||
static HRESULT WINAPI drive_get_DriveLetter(IDrive *iface, BSTR *letter)
|
||||
{
|
||||
struct drive *This = impl_from_IDrive(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, letter);
|
||||
return E_NOTIMPL;
|
||||
|
||||
TRACE("(%p)->(%p)\n", This, letter);
|
||||
|
||||
if (!letter)
|
||||
return E_POINTER;
|
||||
|
||||
*letter = SysAllocStringLen(This->root, 1);
|
||||
if (!*letter)
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI drive_get_ShareName(IDrive *iface, BSTR *share_name)
|
||||
|
|
|
@ -1240,10 +1240,19 @@ static void test_DriveCollection(void)
|
|||
while (IEnumVARIANT_Next(enumvar, 1, &var, &fetched) == S_OK) {
|
||||
IDrive *drive = (IDrive*)V_DISPATCH(&var);
|
||||
DriveTypeConst type;
|
||||
BSTR str;
|
||||
|
||||
hr = IDrive_get_DriveType(drive, &type);
|
||||
ok(hr == S_OK, "got 0x%08x\n", hr);
|
||||
|
||||
hr = IDrive_get_DriveLetter(drive, NULL);
|
||||
ok(hr == E_POINTER, "got 0x%08x\n", hr);
|
||||
|
||||
hr = IDrive_get_DriveLetter(drive, &str);
|
||||
ok(hr == S_OK, "got 0x%08x\n", hr);
|
||||
ok(SysStringLen(str) == 1, "got string %s\n", wine_dbgstr_w(str));
|
||||
SysFreeString(str);
|
||||
|
||||
hr = IDrive_get_IsReady(drive, NULL);
|
||||
ok(hr == E_POINTER, "got 0x%08x\n", hr);
|
||||
|
||||
|
|
Loading…
Reference in New Issue