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. pkg_utility

    创建包名: CREATE OR REPLACE PACKAGE BODY PKG_UTILITY AS --字符串转换到索引表 PROCEDURE STR_TO_LIST(PI_STR IN VARC ...

  2. AOP 笔记

    http://blog.csdn.net/Intlgj/article/details/5671248 这篇文章里面介绍的非常好,值得阅读. 这里盗用里面的两张图片 [在没有AOP之前是这样的] [使 ...

  3. BufferedInputStream 源码分析

    一.简介 BufferedInputStream会缓存一部分数据(默认8K),这个函数的作用就是读取更多的数据到缓存,必要的时候会扩大缓存的内容. 在该类中有几个重要的标志位:markpos,pos, ...

  4. Codeforces 486B - OR in Matrix

    矩阵的 OR ,也是醉了. 题目意思很简单,就是问你有没有这么一个矩阵,可以变化,得到输入的矩阵. 要求是这个矩阵每行都可以上下任意移动,每列都可以左右任意移动. 解题方法: 1.也是导致我WA 的原 ...

  5. Ubuntu上搭建DokuWiki

    1.准备工作 1) 安装Apache sudo apt-get install apache2 2)在浏览器中输入http://localhost 如果现实It works则说明Apache安装成功, ...

  6. Office 365 - SharePoint 2013 Online之加入App开发工具Napa

    1.新建一个站点集,模板选择开发者模板.例如以下图: 2.确定以后,须要稍等一会儿; 3.点击站点内容,加入app,例如以下图: 4.进入SharePoint Store.选择Napa.例如以下图: ...

  7. CheckBoxList控件

    主要介绍:自定义数据.绑定数据库数据.全选,取消全选. 这种方法是绑定已经给定(自定义)的字段(这种方法是绑定给定的值,就是在编写控件时给Text赋的值): 前台代码: <asp:CheckBo ...

  8. C语言顺序栈实现

    /*数序栈*/ #include<stdio.h> #include<stdlib.h> #include<math.h> #define SElemType ch ...

  9. MySQL中select * for update锁表的问题(转)

    由于InnoDB预设是Row-Level Lock,所以只有「明确」的指定主键,MySQL才会执行Row lock (只锁住被选取的资料例) ,否则MySQL将会执行Table Lock (将整个资料 ...

  10. Maven和Eclipse联合开发(转)

    最近公司突然把以前的架构推到从来,这个还真需要勇气,不过也是的,基础不好,再好的房子也站不稳.公司采用Maven作为项目管理,WebService项目框架采用SDHI.(Spring+Dubbo+He ...