[3/4] taskschd: Implement ITaskService::get_TargetServer.
Dmitry Timoshkov
dmitry at baikal.ru
Tue Jan 14 02:18:11 CST 2014
---
dlls/taskschd/Makefile.in | 1 +
dlls/taskschd/task.c | 15 +++++++++++++--
dlls/taskschd/tests/scheduler.c | 2 --
3 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/dlls/taskschd/Makefile.in b/dlls/taskschd/Makefile.in
index 2436289..2b49585 100644
--- a/dlls/taskschd/Makefile.in
+++ b/dlls/taskschd/Makefile.in
@@ -1,4 +1,5 @@
MODULE = taskschd.dll
+IMPORTS = oleaut32
C_SRCS = \
task.c \
diff --git a/dlls/taskschd/task.c b/dlls/taskschd/task.c
index fd64bf9..5ff3761 100644
--- a/dlls/taskschd/task.c
+++ b/dlls/taskschd/task.c
@@ -193,8 +193,19 @@ static HRESULT WINAPI TaskService_get_Connected(ITaskService *iface, VARIANT_BOO
static HRESULT WINAPI TaskService_get_TargetServer(ITaskService *iface, BSTR *server)
{
- FIXME("%p,%p: stub\n", iface, server);
- return E_NOTIMPL;
+ TaskService *task_svc = impl_from_ITaskService(iface);
+
+ TRACE("%p,%p\n", iface, server);
+
+ if (!server) return E_POINTER;
+
+ if (!task_svc->connected)
+ return HRESULT_FROM_WIN32(ERROR_ONLY_IF_CONNECTED);
+
+ *server = SysAllocString(task_svc->comp_name);
+ if (!*server) return E_OUTOFMEMORY;
+
+ return S_OK;
}
static HRESULT WINAPI TaskService_get_ConnectedUser(ITaskService *iface, BSTR *user)
diff --git a/dlls/taskschd/tests/scheduler.c b/dlls/taskschd/tests/scheduler.c
index bf84c0d..02382c5 100644
--- a/dlls/taskschd/tests/scheduler.c
+++ b/dlls/taskschd/tests/scheduler.c
@@ -52,7 +52,6 @@ static void test_Connect(void)
ok(vbool == VARIANT_FALSE, "expected VARIANT_FALSE, got %d\n", vbool);
hr = ITaskService_get_TargetServer(service, &bstr);
-todo_wine
ok(hr == HRESULT_FROM_WIN32(ERROR_ONLY_IF_CONNECTED), "expected ERROR_ONLY_IF_CONNECTED, got %#x\n", hr);
/* Win7 doesn't support UNC \\ prefix, but according to a user
@@ -89,7 +88,6 @@ todo_wine
ok(vbool == VARIANT_TRUE, "expected VARIANT_TRUE, got %d\n", vbool);
hr = ITaskService_get_TargetServer(service, &bstr);
-todo_wine
ok(hr == S_OK, "get_TargetServer error %#x\n", hr);
if (hr == S_OK)
{
--
1.8.5.2
More information about the wine-patches
mailing list