1

我正在使用下面的一段代码,它在本地使用时工作得很好,但它可以用于服务器目的吗?有什么办法可以将OpenTextFile用于服务器目的?

function WriteToFile(data) { 
    var currentdate = new Date(); 
    var datetime = "Time: " + currentdate.getDate() + "/" + (currentdate.getMonth()+1) + "/" + currentdate.getFullYear() + " @ " + currentdate.getHours() + ":" + currentdate.getMinutes() + ":" + currentdate.getSeconds(); 
    var fso = new ActiveXObject("Scripting.FileSystemObject"); 
    var a = fso.OpenTextFile("C:\\logs\\log.txt", 8); 
    a.WriteLine(datetime); 
    a.WriteLine(data + "\n"); 
    a.Close(); 
} 

我已经尝试了一切为我的Z:驱动器中的txt文件的路径,没有任何运气。这甚至有可能吗?我还授予对该文件夹“Everyone”的访问权限,以便它可以读写,但仍然无法打开txt文件进行编辑。对于我使用IE8的记录。

有什么建议吗?

+0

读我的答案@ http://stackoverflow.com/questions/15537424/得到目录中的所有文件夹列表#15537569 – 2013-04-09 15:02:56

+0

@IOIOMAD并没有真正回答我的问题 – randomizertech 2013-04-09 15:40:08

回答

1

使用示例中的语法,您无法使用ActiveX Scripting.FileSystemObject访问服务器上的任何文件。这是因为ActiveX FileSystemObject控件将在客户端执行,因为没有指定远程服务器,因此它只能访问客户端的文件系统。您可以使用您的语法指定远程服务器,但在IE 9标准模式或IE 10及更高版本中为not supported,因此不推荐使用它。

相反,要访问服务器的文件系统,您需要使用服务器端语言(如Active Server Page(ASP))在服务器端创建FileSystemObject。在ASP FileSystemObject的,他们将采用Server.CreateObject("Scripting.FileSystemObject")

一些很好的例子使用FileSystemObject的实例化与ASP可以在这里找到:http://support.microsoft.com/kb/218606这里:http://www.codeproject.com/Articles/7296/Reading-Files-in-ASP-and-How-to-Search-for-a-parti