zoukankan      html  css  js  c++  java
  • C#功能扩张方式

    有时候,为了完成一些window的一些操作,需要引入一些dll进行操作

    1)  引入系统api进行操作,形如[DllImport("urlmon.dll", CharSet = CharSet.Ansi)]  ,包括findWindow找到窗口句柄,以及下面的改变浏览器的UserAgent

    [DllImport("urlmon.dll", CharSet = CharSet.Ansi)]
    private static extern int UrlMkSetSessionOption(int dwOption, string pBuffer, int dwBufferLength, int dwReserved);

    const int URLMON_OPTION_USERAGENT = 0x10000001;

    2) 引入COMdll,如增加相应事件的监听功能,下面是增加导航错误处理事件 

    1.  [ComImport, Guid("34A715A0-6587-11D0-924A-0020AFC7AC4D"),  
    2.     InterfaceType(ComInterfaceType.InterfaceIsIDispatch),  
    3.     TypeLibType(TypeLibTypeFlags.FHidden)]  
    4.     public interface DWebBrowserEvents2  
    5.     {  
    6.         [DispId(271)]  
    7.         void NavigateError(  
    8.             [In, MarshalAs(UnmanagedType.IDispatch)] object pDisp,  
    9.             [In] ref object URL, [In] ref object frame,  
    10.             [In] ref object statusCode, [In, Out] ref bool cancel);  
    11.     }  

    com英文为Component Object Model(组件对象模型),是微软生产软件组件的标准。它是构造二进制兼容软件组件的规范,不管组件应用何种语言编写只要遵循com规范就可以相互直接通信

  • 相关阅读:
    oracle函数 exp(y)
    oracle函数 power(x,y)
    oracle函数 floor(x)
    oracle函数 ceil(x)
    oracle函数 ABS(x)
    简明Python3教程(A Byte of Python 3)
    C#实现窗口最小化到系统托盘
    简明Python3教程 4.安装
    ubuntu
    Javascript 笔记与总结(2-6)var
  • 原文地址:https://www.cnblogs.com/wwwfj/p/3682161.html
Copyright © 2011-2022 走看看