new ActiveXObject("Scripting.FileSystemObject") 未能建立對象的解決方法

[html] view plain copy
 
  1. JavaScript中ActiveXObject對象是啓用並返回 Automation 對象的引用。使用方法:  
  2. newObj = new ActiveXObject( servername.typename[, location])  
  3. ActiveXObject 對象語法有這些部分:  
  4. 其中newObj是必選項。要賦值爲 ActiveXObject 的變量名。  
  5. servername是必選項。提供該對象的應用程序的名稱。  
  6. typename是必選項。要建立的對象的類型或類。  
  7. location是可選項。建立該對象的網絡服務器的名稱。  
  8. Automation服務器至少提供一類對象,例如字處理應用程序可能提供應用程序對象、文檔對象和工具欄對象。  

項目中有一個頁面JavaScript代碼經過ActiveXObject建立FileSystemObject實現文件的讀取。
[javascript] view plain copy
 
  1. function Login() {  
  2.       var fso;  
  3.       var filePath;  
  4.       try {  
  5.           fso = new ActiveXObject("Scripting.FileSystemObject");  
  6.       }  
  7.       catch (exp) {  
  8.           alert("要生成該報表,必須將瀏覽器須設置爲可以使用「ActiveX控件」。若有疑問,請點擊瀏覽器的「幫助」瞭解瀏覽器設置方法!");  
  9.       }   
  10.       filePath = fso.BuildPath("c:\\files", "test.txt"); //生成路徑   
  11.       alert(filePath);   
  12.  }  

但每次瀏覽器都報錯未能建立對象.javascript

F12開發者模式調試時發現:運行至new ActiveXObject這行時,automation服務器未能建立對象。html

 

解決方法:java

IE瀏覽器->工具->Internet選項->安全->自定義級別->設置瀏覽器

->「對未標記爲可安全執行腳本的ActiveX控件初始化並執行腳本」設置爲啓用,肯定便可。安全

 

注意:
啓用此選項只可用於調試本地代碼,在訪問其它網站前必定記得改過來。
不然惡意腳本將經過IE具備讀、寫、遍歷你本地文件等的所有權限!服務器

相關文章
相關標籤/搜索