Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Прикрепление файла к письму / 16 сообщений из 16, страница 1 из 1
02.04.2007, 13:59
    #34431246
Drako
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
Здравствуйте. такая проблема. Необходимо прикрепить к письму файл. В принципе, задача проста -
var myMail=Server.CreateObject("CDO.Message");
myMail.AddAttachment (attachment);
Проблема в том, что указание пути к файлу необходимо в виде http://..., а на данном сервере не установлен IIS => нельзя обратиться http://...
Не подскажете ли, каким еще образом можно прикрепить файл к письму?
Была идея, что создать на другом сервере с IIS временную папку, в которую скачать этот файл
f_script=new ActiveXObject("Scripting.FileSystemObject");
f_script.CopyFile(откуда, куда);
и потом оттуда прикрепить. Проблема в том, что CopyFile похоже не работает с сетевым путем.
Т.е., если я указываю file://имя_сервера/папка/имя файла - не копирует.
Каким образом можно решить данную задачу?
Код пишется на ASP/JS. Выполнение сценария на сервере.
...
Рейтинг: 0 / 0
02.04.2007, 14:27
    #34431361
ambarka_max
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
если сервера в одной сети, то расшарь папку на сервере2, и дай права на чтение учетным записям iis-а с первого сервака. и все будет работать по идее.
...
Рейтинг: 0 / 0
02.04.2007, 14:36
    #34431385
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
DrakoПроблема в том, что указание пути к файлу необходимо в виде http://...необходимо кому?
...
Рейтинг: 0 / 0
02.04.2007, 14:53
    #34431445
Drako
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
maXmo DrakoПроблема в том, что указание пути к файлу необходимо в виде http://...необходимо кому?
Кому? Этому компоненту. Если указываю file:// или \\имя_сервера\... - он не прикрепляет.

ambarka_max, я не понял. Ты предлагаешь расшарить папку для записей? Но! Эта папка, из которой мне надо взять файл - она уже расшарена для всех. У всех есть к ней полный доступ. Так что я не понимаю, что ты имеешь ввиду.
...
Рейтинг: 0 / 0
02.04.2007, 15:18
    #34431527
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
А почему нельзя указать путь как "с:\папка"?
...
Рейтинг: 0 / 0
02.04.2007, 15:29
    #34431565
Drako
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
AntonariyА почему нельзя указать путь как "с:\папка"?
Запуская код на одном сервере, а файл надо взять с другого сервера.?
Интересно, а каким образом ты ему скажешь, что диск c - на другом сервере не указывая сетевой путь?
...
Рейтинг: 0 / 0
02.04.2007, 16:01
    #34431683
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
DrakoКому? Этому компоненту. Если указываю file:// или \\имя_сервера\... - он не прикрепляет.что, молча не прикрепляет? Может, ты путь неправильно указываешь?
...
Рейтинг: 0 / 0
02.04.2007, 16:20
    #34431743
Drako
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
maXmoчто, молча не прикрепляет? Может, ты путь неправильно указываешь?
А что там указывать? Я пробовал:
File://путь к файлу, \\\\путь к файлу (\ - в 2 раза больше, поскольку JS)
Что там может быть неправильно? Путь точно верный. Значит неверный синтаксис. Я знаю, что работает при http://. А можно еще как-то? Или пример, please. Только пример именно с сетевым адресом, а не C:\\..., например. Такого в нете полно, но работа-то происходит не с локальным адресом, а с сетевым!
...
Рейтинг: 0 / 0
02.04.2007, 16:27
    #34431763
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
Drako AntonariyА почему нельзя указать путь как "с:\папка"?
Запуская код на одном сервере, а файл надо взять с другого сервера.?
Интересно, а каким образом ты ему скажешь, что диск c - на другом сервере не указывая сетевой путь? DrakoБыла идея, что создать на другом сервере с IIS временную папку, в которую скачать этот файлЯ так понял это один из возможных вариантов, а не единственный.

Покажи целиком код.
...
Рейтинг: 0 / 0
02.04.2007, 16:28
    #34431766
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
можно предварительно диск подцепить
...
Рейтинг: 0 / 0
02.04.2007, 16:30
    #34431769
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
DrakoТолько пример именно с сетевым адресом, а не C:\\..., например. Такого в нете полно, но работа-то происходит не с локальным адресом, а с сетевым!а с локального присоединяет? Повторю вопрос: сообщений об ошибке не выдаёт?
...
Рейтинг: 0 / 0
02.04.2007, 16:53
    #34431866
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
Drako \\\\путь к файлу (\ - в 2 раза больше, поскольку JS)По-моему ошибка здесь. Компоненту пофиг кто ему передает строку, js или нет. Он пучает 4 слеша и обламывается.
...
Рейтинг: 0 / 0
02.04.2007, 17:58
    #34432148
Drako
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
AntonariyПокажи целиком код.
Код: 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.
		function MailSend(subj,body)
		{
			try
			{
				var myMail=Server.CreateObject("CDO.Message");
				myMail.Subject=subj;
				myMail.From="mail from";
				myMail.To="mail to";
				myMail.TextBody=body;
				f_script=new ActiveXObject("Scripting.FileSystemObject");
				f_script1=f_script.createFolder(temp_folder);
				f_script1.Move("E:\\имя_папки\\")
				f_script.CopyFile("file://имя_сервера_1/путь/"+attachment, "http://имя_сервера_2/путь");
				myMail.AddAttachment ("http://имя_сервера_2/путь/"+attachment)
				//myMail.AddAttachment (attachment);  // прикрепление файла, работает, если attachment=http://... 
                                   // attachment - имя файла

				myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing")= 2 ;
				myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") ="сервер";
				myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport")= 25  ;	
				myMail.Configuration.Fields.Update();
				myMail.Send();
				Response.Write("<script>alert('Mail sent.')</script>");
			}
			catch(e)
			{
				Response.Write("<script>alert('Error sending email:"+e.Description+"')</script>");
			}	
			return;
		}
		MailSend("тема",Comment);
Я уже пробовал множество вариантов написания пути. Ни один не работает. Работает только там, где указывается жесткий путь E:\\..., но поскольку это другой сервер путь нужен сетевой...

AntonariyПо-моему ошибка здесь. Компоненту пофиг кто ему передает строку, js или нет. Он пучает 4 слеша и обламывается.
Я уже пробовал и 2, и 1, и 4 слеша... Не работает. Но вообще-то, в JS же \ - системный символ. Т.е. чтобы в строке был символ \ - необходимо написать \\...

maXmoа с локального присоединяет?
Попробовал f_script.CopyFile("c:\\имя_файла", "C:\\папка\\"); - нет, не копирует... :( Ошибка выдается - underfined...
...
Рейтинг: 0 / 0
03.04.2007, 13:03
    #34433924
Drako
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
Работает, когда я указываю
f_script.CopyFile("e:\\test.txt", "e:\\temp\\");
Однако если заменить e:\\ на сетевой путь - не работает... Как тогда можно скопировать файл?
...
Рейтинг: 0 / 0
03.04.2007, 13:30
    #34434047
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
может scp ?
...
Рейтинг: 0 / 0
06.04.2007, 15:23
    #34443853
Drako
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прикрепление файла к письму
Спасибо всем. Похоже была проблема с сервером. У меня теперь работает
f_script.CopyFile("\\\\сервер1\\путь\\имя файла", "\\\\сервер2\\путь\\");
Однако такой вопрос. Нельзя отслеживать в чем ошибка? Структура
try
{условие}
сatch (e)
{Response.Write("<script>alert('Error:"+e.Description+"');</script>");}
выдает underfined...
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Прикрепление файла к письму / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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