zoukankan      html  css  js  c++  java
  • 发现的一个新的API

    最近在研究C#中的API应用,所以建一个新的目录API32 in C#。专门收集和整理一些常用的API在C#中的应用。好了今天说的是在MSDN上发现的一个新的API。说他是新的,是因为以前没有用过和见过。在常用的API浏览器中也找不到。

    GetWindowLongPtr

    这个函数是在指定的窗口中获取信息。也可以在指定window内存偏移量的情况下获取值。

    可以拿这个函数来代替GetWindowLong函数来获取一个指示器或者句柄(注:指示器和句柄是32位或64位微软windows所特有的概念)。要写一个兼容32位或64位windows版本的代码,就要使用这个函数。

    语法:

    LONG_PTR GetWindowLongPtr(      
        HWND hWnd,
        int nIndex
    );

    参数:

    hWnd
     欲获取信息的窗口(或属于窗口的类)的句柄。
    nIndex
      为欲获取的信息指定值。可以是以下其中之一。
      GWL_EXSTYLE
          获取扩展窗口样式。更多信息,查阅CreateWindowEx
       GWL_STYLE
          获取窗口样式(window styles
       GWLP_WNDPROC
          获取窗口程序指示器,或描述指示器的句柄 。如果使用此参数,必须使用CallWindowProc回调函数。
       GWLP_HINSTANCE
          获取一个应用程序实例的句柄 。
       GWLP_HWNDPARENT
          如果只有一个父窗口,获取父窗口的句柄 。
       GWLP_ID
          获取窗口标识符。
       GWLP_USERDATA
          获取窗口关联的数据,是应用程序创建窗口时留给用户的数据。初始值是0。
       DWLP_DLGPROC
          获取一个对话框的指示器,或描述指示器的句柄 。如果使用此参数,必须使用CallWindowProc回调函数。

       DWLP_MSGRESULT
    获取一个对话框中的被处理的信息的值。
       DWLP_USER
    作为指示器或句柄来获取私有应用程序的额外的信息。

    返回值:

    如果函数执行成功,将返回读取的值。
    如果执行失败,将返回零,要获取更多扩展信息,请调用GetLastError.
    如果SetWindowLong or SetWindowLongPtr没有被事先调用,就在扩展窗口或类内存中调用GetWindowLongPtr函数,将返回零

    详情你也可以查看MSDN
    使用库:User32.DLL

    例如:
    [DllImport("user32", EntryPoint="GetWindowLongPtr")]
    public static extern IntPtr GetWindowLongPtr(
            InPtrt hwnd,
            int nIndex
    );
  • 相关阅读:
    Python全栈开发——装饰器
    Python全栈开发——类
    Python全栈开发——Json & pickle & shelve & sys模块
    Python全栈开发——正则表达式
    实验3- 熟悉常用的 HBase 操作
    Hbase PleaseHoldException错误
    HDFS 中文件操作的错误集锦
    ubuntu在虚拟机下的安装 ~~~ Hadoop的安装及配置 ~~~ Hdfs中eclipse的安装
    假期周进度报告---08
    假期周进度报告---07
  • 原文地址:https://www.cnblogs.com/sxlfybb/p/227752.html
Copyright © 2011-2022 走看看