vs不支持通过afxgetmainwnd()获取窗口句柄(转)

问题:

在vc6中这样代码顺利通过,可执行

::SetDlgItemText(AfxGetMainWnd()-> m_hWnd,IDC_TIME,strTime);

(这是在对话框程序中,代码在一个全局的线程函数中,设置一个EDIT框的内容)。

?

但是同样代码,同样编程环境的vc8中,此代码就不得行了。首先是运行错误(编译还可以),我估计可能是第一个参数出得问题,又因为这是个全局函数中得代码SetDlgItemText被提示应该用SetDlgItemTextW来代替。

?

请问,这种情况,我怎么修改代码呢?

答案:

::SetDlgItemText(AfxGetMainWnd()->m_hWnd,IDC_TIME,strTime);

?

改为这个:SetDlgItemText(AfxGetApp()->m_pMainWnd->m_hWnd,IDC_TIME, strTime);

?

小小的改动 VC2005不支持AfxGetMainWnd()->m_hWnd来获取HWND

问题:

在vc6中这样代码顺利通过,可执行

::SetDlgItemText(AfxGetMainWnd()-> m_hWnd,IDC_TIME,strTime);

(这是在对话框程序中,代码在一个全局的线程函数中,设置一个EDIT框的内容)。

?

但是同样代码,同样编程环境的vc8中,此代码就不得行了。首先是运行错误(编译还可以),我估计可能是第一个参数出得问题,又因为这是个全局函数中得代码SetDlgItemText被提示应该用SetDlgItemTextW来代替。

?

请问,这种情况,我怎么修改代码呢?

答案:

::SetDlgItemText(AfxGetMainWnd()->m_hWnd,IDC_TIME,strTime);

?

改为这个:SetDlgItemText(AfxGetApp()->m_pMainWnd->m_hWnd,IDC_TIME, strTime);

?

小小的改动 VC2005不支持AfxGetMainWnd()->m_hWnd来获取HWND

?

问题:

在vc6中这样代码顺利通过,可执行

::SetDlgItemText(AfxGetMainWnd()-> m_hWnd,IDC_TIME,strTime);

(这是在对话框程序中,代码在一个全局的线程函数中,设置一个EDIT框的内容)。

?

但是同样代码,同样编程环境的vc8中,此代码就不得行了。首先是运行错误(编译还可以),我估计可能是第一个参数出得问题,又因为这是个全局函数中得代码SetDlgItemText被提示应该用SetDlgItemTextW来代替。

?

请问,这种情况,我怎么修改代码呢?

答案:

::SetDlgItemText(AfxGetMainWnd()->m_hWnd,IDC_TIME,strTime);

?

改为这个:SetDlgItemText(AfxGetApp()->m_pMainWnd->m_hWnd,IDC_TIME, strTime);

?

小小的改动 VC2005不支持AfxGetMainWnd()->m_hWnd来获取HWND

?

问题:

在vc6中这样代码顺利通过,可执行

::SetDlgItemText(AfxGetMainWnd()-> m_hWnd,IDC_TIME,strTime);

(这是在对话框程序中,代码在一个全局的线程函数中,设置一个EDIT框的内容)。

?

但是同样代码,同样编程环境的vc8中,此代码就不得行了。首先是运行错误(编译还可以),我估计可能是第一个参数出得问题,又因为这是个全局函数中得代码SetDlgItemText被提示应该用SetDlgItemTextW来代替。

?

请问,这种情况,我怎么修改代码呢?

答案:

::SetDlgItemText(AfxGetMainWnd()->m_hWnd,IDC_TIME,strTime);

?

改为这个:SetDlgItemText(AfxGetApp()->m_pMainWnd->m_hWnd,IDC_TIME, strTime);

?

小小的改动 VC2005不支持AfxGetMainWnd()->m_hWnd来获取HWND

问题:

在vc6中这样代码顺利通过,可执行

::SetDlgItemText(AfxGetMainWnd()-> m_hWnd,IDC_TIME,strTime);

(这是在对话框程序中,代码在一个全局的线程函数中,设置一个EDIT框的内容)。

?

但是同样代码,同样编程环境的vc8中,此代码就不得行了。首先是运行错误(编译还可以),我估计可能是第一个参数出得问题,又因为这是个全局函数中得代码SetDlgItemText被提示应该用SetDlgItemTextW来代替。

?

请问,这种情况,我怎么修改代码呢?

答案:

::SetDlgItemText(AfxGetMainWnd()->m_hWnd,IDC_TIME,strTime);

?

改为这个:SetDlgItemText(AfxGetApp()->m_pMainWnd->m_hWnd,IDC_TIME, strTime);

?

小小的改动 VC2005不支持AfxGetMainWnd()->m_hWnd来获取HWND

问题:

在vc6中这样代码顺利通过,可执行

::SetDlgItemText(AfxGetMainWnd()-> m_hWnd,IDC_TIME,strTime);

(这是在对话框程序中,代码在一个全局的线程函数中,设置一个EDIT框的内容)。

?

但是同样代码,同样编程环境的vc8中,此代码就不得行了。首先是运行错误(编译还可以),我估计可能是第一个参数出得问题,又因为这是个全局函数中得代码SetDlgItemText被提示应该用SetDlgItemTextW来代替。

?

请问,这种情况,我怎么修改代码呢?

答案:

::SetDlgItemText(AfxGetMainWnd()->m_hWnd,IDC_TIME,strTime);

?

改为这个:SetDlgItemText(AfxGetApp()->m_pMainWnd->m_hWnd,IDC_TIME, strTime);

?

小小的改动 VC2005不支持AfxGetMainWnd()->m_hWnd来获取HWND

VC6与VS2005的一个问题!!!

?

问题:

在vc6中这样代码顺利通过,可执行

::SetDlgItemText(AfxGetMainWnd()-> m_hWnd,IDC_TIME,strTime);

(这是在对话框程序中,代码在一个全局的线程函数中,设置一个EDIT框的内容)。

但是同样代码,同样编程环境的vc8中,此代码就不得行了。首先是运行错误(编译还可以),我估计可能是第一个参数出得问题,又因为这是个全局函数中得代码SetDlgItemText被提示应该用SetDlgItemTextW来代替。

请问,这种情况,我怎么修改代码呢?

答案:

::SetDlgItemText(AfxGetMainWnd()->m_hWnd,IDC_TIME,strTime);

改为这个:SetDlgItemText(AfxGetApp()->m_pMainWnd->m_hWnd,IDC_TIME, strTime);

小小的改动 VC2005不支持AfxGetMainWnd()->m_hWnd来获取HWND

时间: 2024-11-05 18:08:32

vs不支持通过afxgetmainwnd()获取窗口句柄(转)的相关文章

C++中各种获取窗口句柄的方法

AfxGetMainWnd AfxGetMainWnd获取自身窗口句柄 HWND hWnd = AfxGetMainWnd()->m_hWnd; GetTopWindow 函数功能:该函数检查与特定父窗口相联的子窗口z序(Z序:垂直屏幕的方向,即叠放次序),并返回在z序顶部的子窗口的句柄. 函数原型:HWND GetTopWindow(HWND hWnd): 参数: hWnd:被查序的父窗口的句柄.如果该参数为NULL,函数返回Z序顶部的窗口句柄. 返回值:     如果函数成功,返回值为在Z序

MFC注册窗口类以及FindWindow按窗口类名查询(避免用#32770获取窗口句柄)

呵呵,最近在研究SendMessage函数,其中需要用到m_hWnd,之后延伸着又尝试获得窗口的句柄,于是遇到了FindWindow函数,原型如下: HWND FindWindow ( LPCSTR lpClassName,    //输入窗口的类名,其实需要是注册过的类名才行,否则是要报错或者查找失败的. LPCSTR lpWindowName, //输入窗口的名称,就是窗口上面蓝色的那行玩意儿写的字. ); 对于这个函数,如果按照窗口的名称查找,相信大家都非常简单,因为名称在rc文件里,是已

获取窗口句柄

1.使用FindWindow函数获取窗口句柄 示例:使用FindWindow函数获取窗口句柄,然后获得窗口大小和标题,并且移动窗口到指定位置. [html] view plaincopy #include <Windows.h> #include <stdio.h> #include <string.h> #include <iostream.h> int main(int argc, char* argv[]) { //根据窗口名获取QQ游戏登录窗口句柄

窗口句柄浅析和获取窗口句柄的方法

句柄(HANDLE)是Windows程序中一个重要的概念,使用也非常频繁.在Windows程序中,有各种各样的资源(窗口.图标.光标等),系统在创建这些资源时会为它们分配内存,并返回标识这些资源的标识号,即句柄. 窗口句柄是windows句柄的一种,且是重要的一种句柄.在Windows应用程序中,窗口是通过窗口句柄(HWND)来标识的.我们要对某个窗口进行操作,首先就要得到这个窗口的句柄. 窗口句柄的概念比较抽象,简单说窗口句柄就是一个窗口(window)的代表.我们通过几个例子来认识它. 1.

支付宝不支持qq邮箱获取账单

年初的时候支付宝获取QQ账单都能获取到,到今年的5.6月份获取不到QQ邮箱账单,如下: 上次拨打支付宝客服,人家让我换邮箱,给我介绍阿里邮箱,当时我就笑了,这是信用卡账单,就因为一个账单而去注册一个新的邮箱,因为QQ是大家最常用的聊天工具与邮箱,这样不支持QQ获取账单,我的邮箱也有不少,最常用的还是QQ邮箱,基本天天在用,如果一个服务商去改变用户习惯,用户会放弃这个产品,因为产品不符合用户习惯就不是好的产品,支付宝不能支持QQ邮箱获取账单,同时放弃一切和支付宝相关的商品购买,因为这个产品不符合用

[WinAPI] 获取窗口句柄的几种方法

1.使用FindWindow函数获取窗口句柄 示例:使用FindWindow函数获取窗口句柄,然后获得窗口大小,并且移动窗口到指定位置. 我们想获得酷我音乐盒的窗口句柄并移动它,该怎么办呢? 首先打开VC或者VS里面tool中的SPY++点击查找窗口如下: PS:把那个靶心似的的东西移动到想查找的窗口上,这里是酷我音乐盒,下面会出现窗口的信息,包括窗口的句柄.名字.类.类型.大小和位置.点击OK还有更多信息~ PS:因为FindWindowA(LPCSTR lpClassName ,LPCSTR

WPF获取窗口句柄

转自http://www.cnblogs.com/jasondan/archive/2011/04/06/2095984.html .NET WinForm获取窗口句柄很方便,this.Handle搞定. WPF就有些麻烦了,获取方法如下: 引入命名空间:using System.Windows.Interop; 获取方法:new WindowInteropHelper(this).Handle

mpvue2.0 支持wx.getUserInfo获取用户信息授权的修改

一.背景 在使用美团的mpvue2.0框架搭建起小程序项目后,做获取用户信息时遇到一些问题:微信小程序更新api后,获取用户信息只能通过button上的绑定方法 来获取用户信息,vue上方法绑定不能直接使用,下面是修改配置mpvue的步骤 vue中代码: <template> <div> <button open-type="getUserInfo" @getuserinfo="bindgetuserinfo">用户授权</

.net 调用 winapi获取窗口句柄和内容

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; using System.Windows.Forms