这篇教程C++ wine_server_call函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中wine_server_call函数的典型用法代码示例。如果您正苦于以下问题:C++ wine_server_call函数的具体用法?C++ wine_server_call怎么用?C++ wine_server_call使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了wine_server_call函数的22个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: find_next_hookstatic inline BOOL find_next_hook(DWORD event, HWND hwnd, LONG object_id, LONG child_id, struct hook_info *info){ BOOL ret; SERVER_START_REQ( get_hook_info ) { req->handle = wine_server_user_handle( info->handle ); req->get_next = 1; req->event = event; req->window = wine_server_user_handle( hwnd ); req->object_id = object_id; req->child_id = child_id; wine_server_set_reply( req, info->module, sizeof(info->module)-sizeof(WCHAR) ); ret = !wine_server_call( req ); if (ret) { info->module[wine_server_reply_size(req) / sizeof(WCHAR)] = 0; info->handle = wine_server_ptr_handle( reply->handle ); info->proc = wine_server_get_ptr( reply->proc ); info->tid = reply->tid; } } SERVER_END_REQ; return ret;}
开发者ID:AndreRH,项目名称:wine,代码行数:26,
示例2: server_init_process_done/*********************************************************************** * server_init_process_done */NTSTATUS server_init_process_done(void){ PEB *peb = NtCurrentTeb()->Peb; IMAGE_NT_HEADERS *nt = RtlImageNtHeader( peb->ImageBaseAddress ); NTSTATUS status; /* Install signal handlers; this cannot be done earlier, since we cannot * send exceptions to the debugger before the create process event that * is sent by REQ_INIT_PROCESS_DONE. * We do need the handlers in place by the time the request is over, so * we set them up here. If we segfault between here and the server call * something is very wrong... */ if (!SIGNAL_Init()) exit(1); /* Signal the parent process to continue */ SERVER_START_REQ( init_process_done ) { req->module = peb->ImageBaseAddress; req->entry = (char *)peb->ImageBaseAddress + nt->OptionalHeader.AddressOfEntryPoint; req->gui = (nt->OptionalHeader.Subsystem != IMAGE_SUBSYSTEM_WINDOWS_CUI); status = wine_server_call( req ); } SERVER_END_REQ; return status;}
开发者ID:iamfil,项目名称:wine,代码行数:29,
示例3: CARET_Callback/***************************************************************** * CARET_Callback */static void CALLBACK CARET_Callback( HWND hwnd, UINT msg, UINT_PTR id, DWORD ctime){ BOOL ret; RECT r; int old_state = 0; int hidden = 0; SERVER_START_REQ( set_caret_info ) { req->flags = SET_CARET_STATE; req->handle = hwnd; req->x = 0; req->y = 0; req->hide = 0; req->state = -1; /* toggle current state */ if ((ret = !wine_server_call( req ))) { hwnd = reply->full_handle; r.left = reply->old_rect.left; r.top = reply->old_rect.top; r.right = reply->old_rect.right; r.bottom = reply->old_rect.bottom; old_state = reply->old_state; hidden = reply->old_hide; } } SERVER_END_REQ; if (ret && !hidden) CARET_DisplayCaret( hwnd, &r );}
开发者ID:howard5888,项目名称:wineT,代码行数:33,
|