标签: hwnd

如何获取winexec或shellexecute中执行的句柄?

我用来创建一个自定义函数,如winexec(...):Hwnd将重新执行已执行应用程序的句柄.

我确实使用了findwindow()但是如果它改变了窗口标题就有问题.

delphi shell hwnd shellexecute handle

0
推荐指数
1
解决办法
7545
查看次数

如何从桌面的句柄中获取Form对象?

我想知道是否有可能获得桌面的表格.我试图从桌面获取hWnd并使用Form.FromHandle来获取表单.但它总是返回null.所以我认为这是不可能的; 如果有可能,有人可以给我看一个示例代码.以下代码不起作用:

 hWnd = GetDesktopWindow();
 desktop = Form.FromHandle(hWnd) as Form;
 System.Diagnostics.Debugger.Break();
Run Code Online (Sandbox Code Playgroud)

PS有人也可以解释我在这里做错了什么.

.net c# desktop hwnd visual-studio-2010

0
推荐指数
1
解决办法
590
查看次数

为什么 Spy++ 看不到发送到 UWP 应用的消息?

虽然我们都在这个话题上纠缠不清,但事实证明,虽然 UWP 应用程序确实有顶级窗口,您可以向它们发送(明智的)消息 (*),并且这些消息确实通过并产生了预期的效果,Spy++似乎永远不会看到这些消息,或者确实看到 Windows 本身可能发送的任何其他消息。

任何人都可以对此有所了解吗?

只是为了提供一些背景信息,Spy 可以毫无问题地定位和检查这些窗口(“查找工具”工作正常),但消息记录完全静音。我已经测试了设置应用程序、屏幕键盘、日历和计算器,并且在 Spy 中勾选了所有适当的“附加窗口”复选框。我还使用 Process Explorer 来检查 Spy 是否以“高完整性级别”运行(因为它大概是提升的),并且确实如此。

(*) 是的,我知道我们不应该这样做,但是,你知道。

windows hwnd spy++ uwp

-1
推荐指数
1
解决办法
868
查看次数

C++为什么Sendmessage不起作用?

在C#中,此SendMessage函数成功提高了音量:

[DllImport("user32.dll")]
public static extern IntPtr SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);

SendMessage(Handle, 0x319, (int)Handle, APPCOMMAND_VOLUME_UP);
Run Code Online (Sandbox Code Playgroud)

但是在C++中,这个SendMessage函数不起作用,即卷不会上升:

// HWND hwnd = CreateWindow(...
SetWindowText(hwnd, "Hi"); // Worked
SendMessage(hwnd, WM_APPCOMMAND, (int)hwnd, APPCOMMAND_VOLUME_UP); // Don't work
Run Code Online (Sandbox Code Playgroud)

我错了什么?你能帮我解决一下吗?谢谢!

完整代码:

#include <windows.h>
HHOOK _hhook;
HWND hwnd;
HINSTANCE _hInstance;

KBDLLHOOKSTRUCT kbdStruct;

LRESULT __stdcall HookCallback(int nCode, WPARAM wParam, LPARAM lParam)
{
    if (nCode >= 0)
    {
        if (wParam == WM_KEYDOWN)
        {
            // lParam is the pointer to the struct containing the data needed, so cast …
Run Code Online (Sandbox Code Playgroud)

c++ winapi hwnd handle sendmessage

-2
推荐指数
1
解决办法
4277
查看次数

C++ WinAPI:HWND返回字符串返回十六进制

我正在使用WinAPI并且我正在尝试制作一个允许您更改标题的程序.

#if defined(UNICODE) && !defined(_UNICODE)

#define _UNICODE
#elif defined(_UNICODE) && !defined(UNICODE)
#define UNICODE
#endif
#include <tchar.h>
#include <windows.h>

#include <string>
#include <sstream>

using namespace std;

string HWNDToString(HWND inputA);
void setTitle(string inputA);

LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);
TCHAR szClassName[ ] = _T("CodeBlocksWindowsApp");
int WINAPI WinMain (HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument, int nCmdShow)
{
    HWND hwnd;
    MSG messages;
    WNDCLASSEX wincl;

    wincl.hInstance = hThisInstance;
    wincl.lpszClassName = szClassName;
    wincl.lpfnWndProc = WindowProcedure;
    wincl.style = CS_DBLCLKS;
    wincl.cbSize = sizeof (WNDCLASSEX);
    wincl.hIcon = LoadIcon …
Run Code Online (Sandbox Code Playgroud)

c++ string winapi hwnd converters

-3
推荐指数
1
解决办法
2317
查看次数