在TwebBrowser中调用隐藏的IE命令

2016-02-19 14:18 3 1 收藏

今天图老师小编要跟大家分享在TwebBrowser中调用隐藏的IE命令,精心挑选的过程简单易学,喜欢的朋友一起来学习吧!

【 tulaoshi.com - 编程语言 】

//命令句柄ID,是来自Shell DocObject View这个类
  const ID_IE_FILE_PAGESETUP           = 259;
  const ID_IE_FILE_PRINT               = 260;
  const ID_IE_FILE_NEWWINDOW           = 275;
  const ID_IE_FILE_PRINTPREVIEW        = 277;
  const ID_IE_FILE_NEWMAIL             = 279;
  const ID_IE_FILE_SENDPAGE            = 282;
  const ID_IE_FILE_SENDLINK            = 283;
  const ID_IE_FILE_SENDDESKTOPSHORTCUT = 284;
  const ID_IE_HELP_VERSIONINFO         = 336;
  const ID_IE_HELP_HELPINDEX           = 337;
  const ID_IE_HELP_WEBTUTORIAL         = 338;
  const ID_IE_HELP_FREESTUFF           = 341;
  const ID_IE_HELP_PRODUCTUPDATE       = 342;
  const ID_IE_HELP_FAQ                 = 343;
  const ID_IE_HELP_ONLINESUPPORT       = 344;
  const ID_IE_HELP_FEEDBACK            = 345;
  const ID_IE_HELP_BESTPAGE            = 346;
  const ID_IE_HELP_SEARCHWEB           = 347;
  const ID_IE_HELP_MSHOME              = 348;
  const ID_IE_HELP_VISITINTERNET       = 349;
  const ID_IE_HELP_STARTPAGE           = 350;
  const ID_IE_HELP_NETSCAPEUSER        = 351;
  const ID_IE_FILE_IMPORTEXPORT        = 374;
  const ID_IE_HELP_ENHANCEDSECURITY    = 375;
  const ID_IE_FILE_ADDTRUST            = 376;
  const ID_IE_FILE_ADDLOCAL            = 377;
  const ID_IE_FILE_NEWPUBLISHINFO      = 387;
  const ID_IE_FILE_NEWPEOPLE           = 390;
  const ID_IE_FILE_NEWCALL              =395;

  //命令句柄ID,是来自 'Internet Explorer_Server'
  
const ID_IE_CONTEXTMENU_NEWWINDOW    = 2137;
  const ID_IE_CONTEXTMENU_ADDFAV       = 2261;
  const ID_IE_CONTEXTMENU_REFRESH      = 6042;

  //下面是获取IE句柄:
  
function GetIEHandle(WebBrowser: TWebbrowser; ClassName: string): HWND;
  
var
    
hwndChild, hwndTmp: HWND;
    oleCtrl: TOleControl;
    szClass: array [0..255] of char;
  
begin
    
oleCtrl :=WebBrowser;
    hwndTmp := oleCtrl.Handle;
    while (true) 
do
    begin
      
hwndChild := GetWindow(hwndTmp, GW_CHILD);
      GetClassName(hwndChild, szClass, SizeOf(szClass));
      if (string(szClass)=ClassName) 
then
      begin
        
Result :=hwndChild;
        Exit;
      end;
      hwndTmp := hwndChild;
    end;
    Result := 0;
  end;

  
  //先是试试调用‘添加到收藏夹’
  procedure TForm1.ToolButton2Click(Sender: TObject);
  
begin
    
SendMessage(GetIEHandle(web, 'Internet Explorer_Server'), WM_COMMAND, ID_IE_CONTEXTMENU_ADDFAV, 0);
  end;

  //再试试'导入和导出'
  procedure TForm1.ToolButton3Click(Sender: TObject);
  
begin
    
SendMessage(GetIEHandle(web, 'Shell DocObject View'), WM_COMMAND, ID_IE_FILE_IMPORTEXPORT, 0);
  end;

  
  
  //初始化
  procedure TForm1.FormCreate(Sender: TObject);
  
begin
    
web.Go(http://blog.csdn.net/laoli/');
  end;

  //ok //

来源:http://www.tulaoshi.com/n/20160219/1606691.html

延伸阅读
标签: Java JAVA基础
<HTML <BODY <FORM action="sendmail.jsp" method="post" <TABLE align="center" <TR <TD width="50%" To:<BR<INPUT name="to" size="25" </TD <TD width="50%" From:<BR<INPUT name="from" size="25" </TD </TR <TR <TD colspan="2" Subject:<BR<INPUT name="subject" size="50" </T...
花了一下午完成了一个初步的示范的例子,看来解决图纸统一管理有了解决的办法了.下一步用jacob封装在java中调用,在服务器上控制打印管理.做个记号再慢慢完善. '取得当前文档对象(vba中的方法,如果是在VB中时需要从顶层对象开始引用取得)Dim currentDoc As AcadDocumentSet currentDoc = ThisDrawing '文档的模型空间Dim sp As AcadModelSpaceSe...
内容或简介: /** 调用数据库里的一个函数 一个函数本质上一个返回一个结果的存储过程,这个例子示范了怎么调用有in、out和in/out参数的函数 ***********************************/ CallableStatement cs; try { // 调用一个没有参数的函数; 函数返回 a VARCHAR // 预处理callable语句 ...
标签: windows 操作系统
打开Regedit.exe在“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer” 下新建dword值“NoSMHelp”值为“1”。切记在右窗口中创建。 重新启动即可。此法应用于WinME/2000/XP。 别让警告提示太烦 如果你在WinMe/2000/XP中有没有打开过“工具→工具夹选项→查看”,选择“隐藏受保护的...
如果曾经使用Java开发过Web应用程序,你一定会对Java applets比较熟悉,这是一种基本上在浏览器中运行的小型程序。当浏览器加载包含有Java applets标志的HTML代码时,Java applets就会执行,网页中的Windows Forms控件的运行方式与Java applets相似。我们可以使用由Windows Forms技术提供的丰富的类开发Windows Forms控件,然后在网页中部...

经验教程

901

收藏

39
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部