SetWindowLong函数介绍 收藏 
SetWindowLong函数介绍

SetWindowLong Unicode

函数原型 
LONG SetWindowLong(hwnd,nIndex,lNewLong) 
HWND hwnd; /* handle of window */ 
int nIndex; /* offset of value to set */ 
LONG lNewLong; /* new value */

函数说明 
SetWindowLong函数修改给定窗口的一个属性。该函数还在给定窗口的附加窗口内存中 
的指定偏移量处设置一个32位(长)值。

参数详解 
hwnd 
标识窗口,并且间接标只出该窗口的属的窗口类。

nIndex 
指定一个距离要设置的值的以0为基值的偏移量。有效的偏移量范围最小为0,最大为附 
加窗口内存的总字节数减为4,注:整数为四个字节;例如:若附加内存被指定为12个或 
更多个字节,值8将是第3个长整数的索引值。要设置其它值,则应指定下列值之一: 
值 动 作 
============================================================================ 
GWL_EXSTYLE 设置新的扩展窗口风格。 
GWL_STYLE 设置新的窗口风格 
GWL_WNDPROC 为窗口过程设置新地址。 
GWL_HINSTANCE 设置一个新的应用程序的实例句柄。 
GWL_ID 设置一人新的窗口标识符。 
GWL_USERDATA 设置与窗口相联系的长值。每个窗口都有一个供创建它的应用 
程序使用的与之对应的长值。

当hwnd标识一个对话框时,还可使用下列值: 
值 含 义 
============================================================================ 
DWL_DLGPROC 设置对话框过程的新地址。 
DWL_MSGRESULT 设置对话框过程所处理的消息的返回值。 
DWL_USER 设置对应用程序来说是私有的新的附加信息:如句柄或打印机 

lNewLong 
指定该替换值。

返回值 
若函数成功,返回值是指定的32位整数的原值;否则,返回值为0。使用GetLastError 
函数可获取补充的错误信息。

注释 
若使用SetWindowLong函数和GWL_WNDPROC索引替换窗口过程,则给定的窗口过程必须遵 
循WindowProc回调函数的说明中指定的准则。 
使用GWL_WNDPROC索引调用SetWindowLong函数可创建该窗口类的子类(窗口类用来创建窗 
口)。应用程序不得用另一个过程的窗口产生子类。 
使用RegisterClass函数,并将WNDCLASS结构的cbWndExtra成员指定为一个非零值,便可 
保留附加窗口内存。 
不得将SetWindowLong与GWL_HWNDPARENT索引一起使用来改变一个子窗口的父窗口。要 
改变子窗口的父窗口,应使用SetParent函数。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/todototry/archive/2006/11/09/1374968.aspx

使程序不显示在任务栏上
SetWindowLong(application.Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);

SetWindowLong的更多相关文章

  1. 修改窗口属性(全部都是SetWindowLong设置)

    说明: 以下函数对于POPUP窗口有效,对于子窗口好像不行. //最小化按钮有效 ::SetWindowLong(m_hWnd,GWL_STYLE,GetWindowLong(m_hWnd,GWL_S ...

  2. 桌面上嵌入窗口(桌面日历)原理探索(将该窗口的Owner设置成桌面的Shell 窗口,可使用SetWindowLong更改窗口的GWL_HWNDPARENT,还要使用SetWindowPos设置Z-Order)

    今天在QQ群里有人问怎样实现将自己的窗口嵌入桌面,让它和桌面融为一体,就像很多桌面日历软件那样. 我当时想到的就是建立一个Child  Window,将他的父窗口设置成桌面Shell窗口就可以了.但是 ...

  3. mfc subclasswindow attach setwindowlong使用区别

    1. CWnd::Attach BOOL Attach( HWND hWndNew ); 返回值:如果成功,则返回非零值:否则返回0. 参数: hWndNew 指定了Windows窗口的句柄. 说明: ...

  4. 窗体的扩展样式GWL_EXSTYLE用于SetWindowLong

    SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_TRANSPARENT or WS_EX_ ...

  5. Delphi:窗体的扩展样式GWL_EXSTYLE用于SetWindowLong

    SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_TRANSPARENT or WS_EX_ ...

  6. 转:介绍shell_notifyicon,SendMessage,CallWindowProc,GetWindowLong,SetWindowLong的用法

    Public Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias " Shell_NotifyIconA& ...

  7. TEdit,TMemo背景透明(SetWindowLong(WS_EX_TRANSPARENT)增加透明风格)

    The component below works perfectly, except for the following problem: 1) Saves the component below ...

  8. SetWindowLong函数GetWindowLong函数

    这两个函数具体应用如下:SetWindowLong函数GetWindowLong函数 Delphi窗口化游戏 var Thwnd:HWND;//声明变量 句柄变量 devmodel1:DEVMODE; ...

  9. 14 Windows编程——SetWindowLong

    使用默认窗口处理函数,源码 #include<Windows.h> #include<Windowsx.h> LRESULT CALLBACK WindProc(HWND hw ...

随机推荐

  1. excel列显示形式互换(字母与数字)

    以office2007为例: excel选项>公式>使用公式下的'R1C1引用样式' 打上钩显示形式为数字,不打钩显示形式为字母

  2. java代码中获取进程process id(转)

    另一方面,线程ID=进程ID+内部线程对象ID并不成立,    参考: blog.csdn.net/heyetina/article/details/6633901     如何在java代码中获取进 ...

  3. 转:CI引入外部js与css

    其实不管是在用CI还是ZF都有同样一个问题,就是路径的问题.前期,我在用ZF做CMS时,我在.htaccess文件中设置了如遇到js,css,img等资源文件都不重定向.但今天在用CI时,却忘记了,搞 ...

  4. 在Eclipse/MyEclipse中安装spket插件

    Spket ide是强大的工具包为了JavaScript和XML的开发,这个强大的编辑器对JavaScript, XUL/XBLand Yahoo! Widget的开发都有全面的支持 ,比如代码完毕, ...

  5. JavaDoc的生成规则---ShinePans

    使用方法: javadoc [options] [packagenames] [sourcefiles] [@files] -overview <file>          从 HTML ...

  6. IT该忍者神龟Instant client required

    pply OS : Windows, Mac, Linux Apply Navicat Product : Navicat for Oracle, Navicat Premium Apply Navi ...

  7. VMware三种链接方式

    VMware三种链接方式 第一种:桥接Bridged 如其的说明:connected directly to the physical networkà直接连接到物理网络.如果是通过路由器连接出来的D ...

  8. 关于php判断中文字符的问题

    在网上找了好多例子,还是这个靠谱点: UTF-8匹配: 在javascript中,要判断字符串是中文是很简单的.比如: var str = "php编程"; if (/^[\u4e ...

  9. QList 和std::list的比较

    QList QList<T> 是一个Qt通用容器类.它存储一序列的值,并且提供基于索引的数据访问方法和快速的插入和删除操作. QList<T>, QLinkedList< ...

  10. m2eclipse简单使用,创建Maven项目 ,运行mvn命令(转)

    前面介绍了如何安装m2eclipse,现在,我们使用m2ecilpse导入Hello World项目. 选择菜单项File,然后选择Import,我们会看到一个Import对话框,在该对话框中选择Ge ...