Гость
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / И опять копирование файлов / 10 сообщений из 10, страница 1 из 1
05.02.2007, 19:15
    #34307538
Nefertiri
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять копирование файлов
Задача тривиальна. Скопировать необходимый файл с сервера(http://). Выдает ошибку. Помогите разобраться

function FunEE()
dim dirnameSourse,nameFile

//откуда копируем
dirnameSourse="http://namesite/reportxls/file.xls"

//куда копируем. По умолчанию копируется на рабочий стол пользователя
nameFile="file2.xls"

//копируем сам файл
Set objFso = CreateObject("Scripting.FileSystemObject")
objFso.CopyFile dirnameSourse, nameFile,1
//копируем файл

end function

При этом выдается ошибка: Bad file name or number
Если в качестве источника путь по сетке или с локала, то все проходит.
...
Рейтинг: 0 / 0
05.02.2007, 20:14
    #34307645
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять копирование файлов
CopyFile работает с локальной FS. Что-то вроде этого Вам нуна
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
function Down(f,u,s)
{
	var
		Result=false,
		xmlHTTP=null,
		oStr=null;

	if(IsBlank(u))
	{
		alert(EMURL);
		reurn(result);
	}

	try
	{
		if(!(xmlHTTP=new ActiveXObject("Microsoft.XMLHTTP")))
			return(Result);

		xmlHTTP.open("GET",document.location.protocol+"//"+document.location.host+"/"+u+(!IsBlank(u) ? "/" : "")+f,false);
		xmlHTTP.Send();
		if(xmlHTTP.readyState!= 4 )
			return(Result);

		switch(xmlHTTP.status)
		{
			case  200  :
			{
				if(!(oStr=new ActiveXObject("ADODB.Stream")))
					return(Result);

				oStr.Mode= 3 ;
				oStr.Type= 1 ;
				oStr.Open();
				oStr.Write(xmlHTTP.responseBody);
				oStr.SaveToFile(s+"\\"+f, 2 );

				Result=true;

				break;
			}
			case  404  :
			{
				alert(NTS);

				break;
			}
		}
	}
	catch(e)
	{
		alert("Down() "+e.name+": "+e.message+"\n"+EM);
	}

	return(Result);
}
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
05.02.2007, 20:45
    #34307684
Nefertiri
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять копирование файлов
Ex_Soft
Пасиб.
попробую
...
Рейтинг: 0 / 0
06.02.2007, 16:55
    #34310005
Nefertiri
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять копирование файлов
все работает замечательно, тока у клиента в целях политики безопасности отключены почти все ActiveX. В частности, вылетает при создании
Код: plaintext
new ActiveXObject("ADODB.Stream")))

Неужели, это последний выход из положения?
...
Рейтинг: 0 / 0
06.02.2007, 23:10
    #34310817
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять копирование файлов
Nefertiri
Неужели, это последний выход из положения?

Ну...

1. Если это какое-нить корпоративное приложение, то все решается просто: издается приказ по организации а-ля "всем вкл ActiveX, добавить в Trusted sites" и усьо... Правда, не факт, что
Nefertiri
в целях политики безопасности... В частности, вылетает при создании

new ActiveXObject("ADODB.Stream")))

закрыто по безопасности где-нить галочками, а не прибито гвоздями (шиферными) KB'шками
Потому как сам ADODB.Stream это не ActiveXObject, а сплошное решето (вернее - наоборот: сплошная дыра, перетянутая разреженными паутинками) в безопасности


2. Ежели это продукт для широких масс населения
, то, IMHO
Код: plaintext
1.
<a href="http://...">скачайте мой супер-пупер-мегаполезный филе</a>
only

Правда:
2.1. Вам, если Вы собираетесь в дальнейшем с ним работать на локальной FS, все равно прийдется организовать какой-то диалог на предмет выяснения куда же, все-таки, положил
юзвер Ваш филе (ессесно, с проверкой: а вдруг - сбрехав?
)
2.2. Все равно прийдется приотворить ActiveX - как-то же Вам все равно нуна будет совершить некие телодвижения над сохраненным локально филе

2.3. Это будет M$ IE only


P.S. Это так - навскидку... Если Вы конкретизируете поставленную задачу, мо, гуртом, шо-то и придумаем

_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
07.02.2007, 10:25
    #34311423
Nefertiri
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять копирование файлов
ок. конкретизирую:
дано: сервер клиента с ограничениями (разрешение на выполнение скриптов(java и VB), работа с OWC и не более)
необходимо: по заданному параметру(название файла) скопировать его на локальную машину юЗверя.
что было сделано:
1. частичный код Ex_Soft встроен в процедуру. Корректно отработал на моейм машине.
2. послала клиенту. У него вышла следующая ошибка: Automation server can't create object
3. на своей машине не смогла сгенерировать подобную ошибку (при различных настройках IE).

Вариант типа
Код: plaintext
1.
<a href="http://...">скачайте мой супер-пупер-мегаполезный фил</a>
не прокатит.

Как один из выходов, просто буду открывать файл в новом окне
Код: plaintext
1.
window.open(docname)
но это некрасиво :(
...
Рейтинг: 0 / 0
07.02.2007, 12:05
    #34311996
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять копирование файлов
1. Вам необходимо просто тупо скопировать филе на клиента без всяких там последующих телодвижений над ним (филе (не клиентом

))?
2. Все филе лежат в одном заранее определенном месте?
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
07.02.2007, 13:54
    #34312542
Nefertiri
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять копирование файлов
Ex_Soft1. Вам необходимо просто тупо скопировать филе на клиента без всяких там последующих телодвижений над ним (филе (не клиентом

))?

да
Ex_Soft
2. Все филе лежат в одном заранее определенном месте?

да. определенная папка. Точный путь на вервере клиента вытаскиваю через document.location
...
Рейтинг: 0 / 0
07.02.2007, 15:03
    #34312869
Ex_Soft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять копирование файлов
Тогда запросите имя филе, родите anchor (или подправте его href, если он будет статический) и симитируйте клик на нем.
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
08.02.2007, 10:15
    #34314825
Nefertiri
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять копирование файлов
Ex_SoftТогда запросите имя филе, родите anchor (или подправте его href, если он будет статический) и симитируйте клик на нем.

Cпасибо. Сделала :). Ох уж эти мне клиенты...
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / И опять копирование файлов / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]