Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Ошибка: Диск не готов (https://javascript.ru/forum/misc/2092-oshibka-disk-ne-gotov.html)

vlad275 30.10.2008 16:51

Ошибка: Диск не готов
 
<script>
function f1(f){
alert(f);
if (f==1) {
var fs, a, ForAppending;
ForAppending = 8;
fs = new ActiveXObject("Scripting.FileSystemObject");
a = fs.OpenTextFile("E:\Program Files\IBM\WebSphere\AppServer\profiles\AppSrv02\installedApps\WASNode01Cell\flexWorkflowEAR.ear\flexWorkflow.war\VTB2.jsp", ForAppending, false);
//для чтения 
//a = myfile.Read(Число в байтах)
//a = myfile.ReadLine()
a = myfile.ReadAll()
//для записи
//a.WriteLine("строка")
//a.WriteBlankLines(1) - пустая строка
//a.Write("строка")
a.Close();    
document.write(a);
}
}
</script>


Как пофиксить?

Kolyaj 30.10.2008 17:42

Цитата:

Сообщение от vlad275
"E:\Program Files\IBM\WebSphere\AppServer\profiles\AppSrv02\in stalledApps\WASNode01Cell\flexWorkflowEAR.ear\flex Workflow.war\VTB2.jsp"

Тут не мешало бы слэши экранировать 'E:\\Program Files\\...'

vlad275 30.10.2008 17:54

Заэкранировал. Ошибка осталась. Может обязательно использовать метод isReady() ?

vlad275 30.10.2008 18:12

Попытался поставить проверку на готовность диска. Не знаю как правильно получить имя диска. name=x.Name; Не работает.
Никто не знает?

<script>
	function f1(f){
		alert(f);
			if (f==1)	{
							
							
							

			var fs, a, ForAppending;
			ForAppending = 8;
			fs = new ActiveXObject("Scripting.FileSystemObject");

							
			var e = new Enumerator(fs.Drives);
			var s = "";	
			var name;	
			for (e.moveFirst(); !e.atEnd(); e.moveNext()) {	// просмотр всех дисков компьютера
			var x = e.item();
			//if (x.DriveType == 3)	// сетевой диск?
			//name = x.ShareName;
			name=x.Name;     //WHAT IS CORRECT?
			document.write("name:"+name);
								if (x.IsReady && name=="E") {
											name = x.VolumeName;
											
											a = fs.OpenTextFile("E:\\Program Files\\IBM\\WebSphere\\AppServer\\profiles\\AppSrv02\\installedApps\\WASNode01Cell\\flexWorkflowEAR.ear\\flexWorkflow.war\\test_response.txt", ForAppending, false);
											//для чтения 
											//a = myfile.Read(Число в байтах)
											//a = myfile.ReadLine()
											a = myfile.ReadAll()
											//для записи
											//a.WriteLine("строка")
											//a.WriteBlankLines(1) - пустая строка
											//a.Write("строка")
											a.Close();
											document.write(a);
											}
									}
						}
					}
</script>

Octane 30.10.2008 18:16

DriveLetter

vlad275 30.10.2008 18:28

Большое спасибо!

vlad275 30.10.2008 19:03

Как не мучался, но isReady=false
В чем может быть проблема? Стоит IBM WebSphere

<script>
	function f1(f){
		alert(f);
			if (f==1)	{
							
							
							

			var fs, a, ForAppending;
			ForAppending = 8;
			fs = new ActiveXObject("Scripting.FileSystemObject");

			var d = fs.GetDrive("E");

			document.write("E:"+d.IsReady);

										for (var i=0; i<1000; i++){
											document.write("d="+d.IsReady);
										}
											a = fs.OpenTextFile("E:\\Program Files\\IBM\\WebSphere\\AppServer\\profiles\\AppSrv02\\installedApps\\WASNode01Cell\\flexWorkflowEAR.ear\\flexWorkflow.war\\test_response.txt", ForAppending, false);
											//для чтения 
											//a = myfile.Read(Число в байтах)
											//a = myfile.ReadLine()
											a = myfile.ReadAll()
											//для записи
											//a.WriteLine("строка")
											//a.WriteBlankLines(1) - пустая строка
											//a.Write("строка")
											a.Close();
											document.write(a);
											
									}
						}
</script>

vlad275 31.10.2008 08:30

А этот файл открывается на клиенте или на сервере?!:eek:


Часовой пояс GMT +3, время: 15:43.