我想实现点击按钮弹出保存文件对话框 选择保存地址 然后点击另一个按钮能将文件保存到选择好的地址那 文件是用ocx从本地usbkey里读出的
下面贴出来代码 先实现弹出保存文件对话框这个功能这是单独的一个js文件
var fileName = "";
function getFilePath(){
var fileDialog =document.getElementById("fileDialog");
 fileDialog.CancelError=true;  
    try{
     fileDialog.Filter="Image Files (*.gif)|ALL Files (*.*)|*.*";
     fileDialog.ShowSave(); //这条执行不了?不知道怎么个情况
     alert("印章文件将被导入"+fileDialog.filename);       
    }catch(e){
    
    } 
}
function exportSeal(){
if(fileName==""){
alert("请选择要导出的文件");
return;
}
}
下面是jsp页面的代码  <body >
     <object  id="fileDialog"  align="middle"   width="20"   height="20" classid="clsid:F9043C85-F6F2-101A-A3C9-08002B2F49FB"></object>
   <fieldset>
   <legend>导出</legend>
   <form>
   <input type="button" value="选择路径" onclick="getFilePath()">
   <input type="button" value="导出" onclick="exportSeal()">
   </form>
   </fieldset>
  </body>还有实现这个功能是用comdlg32么 还是用别的什么?在线等解答 自己找了网上的几个例子试了试也是调不通~郁闷死了

解决方案 »

  1.   

    1、comdlg32.ocx 的注册问题,修改注册表,增加一个注册项;
    2、浏览器的安全问题,把当前站点加到信任站点,再调整信任站点的安全级别
    这个ocx需要一个注册文件,名字是:comdlg.lpk,
    在ie中调用需要这样用:HTML code    <OBJECT CLASSID='clsid:5220cb21-c88d-11cf-b347-00aa00a28331'> <PARAM NAME='LPKPath' VALUE='/resource/comdlg.lpk'> </OBJECT> <OBJECT CLASSID='CLSID:F9043C85-F6F2-101A-A3C9-08002B2F49FB' CODEBASE='/resource/comdlg32.cab'></OBJECT>这个是comdlg.lpk的代码,如果不能用,告诉我邮箱地址,发给你HTML code    LPK License Package ////////////////////////////////////////////////////////////////////////////// // WARNING: The information in this file is protected by copyright law // // and international treaty provisions. Unauthorized reproduction or // // distribution of this file, or any portion of it, may result in severe // // criminal and civil penalties, and will be prosecuted to the maximum // // extent possible under the law. Further, you may not reverse engineer, // // decompile, or disassemble the file. // ////////////////////////////////////////////////////////////////////////////// {3d25aba1-caec-11cf-b34a-00aa00a28331} mWXDqNF2ekGyVjg4QtBySg= AQAAAA= hTwE+fL2GhCjyQgAKy9J+yQAAAA yADgAQwA0AEMAOAAyADAALQA0ADAAMQBBAC0AMQAwADEAQgAtAEEAMwBDADkALQAw ADgAMAAwADIAQgAyAEYANAA5AEYAQgA=
      

  2.   

    查看一下F9043C85-F6F2-101A-A3C9-08002B2F49FB的注册信息会对你有所帮助
      

  3.   

    我看了注册表了 也注册comdlg32成功了
    在网页里就是提示 网页上有错误 
      

  4.   

    USBKey的控件有没有注册成功?浏览器的安全级别?
      

  5.   

    注册成功了 还有这个问题我自己下了个vb6.0装上就好了 真郁闷不过不知道原理 那个ocx运行难道需要6.0环境~~晕死了
      

  6.   

    ocx注册了就可以运行了呀,安装了vb6也就是完成了好多文件的注册而己!
      

  7.   

    嗯  是的 不过我不大明白 我需要的ocx 只是comdlg32.ocx 为什么还不行了 也不知道vb6.0又注册了那些需要的文件 ~~~而且ocx注册成功了 用自己在注册表里找的clsid就不行用 只好用网上例子的clsid 是不是固定的ocx都有自己唯一的clsid呢?这个问题搞的头都大了~~