﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Релиб / ASP / Веб-программирование  / передача большых объемов данных c помощу MSXML2.XMLHTTP / Latest Posts</title><generator>InstantForum.NET v4.1.4</generator><description>Релиб</description><link>http://www.relib.com/forums/</link><webMaster>robot@relib.com</webMaster><lastBuildDate>Sat, 22 Nov 2008 21:50:26 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: передача большых объемов данных c помощу MSXML2.XMLHTTP</title><link>http://www.relib.com/forums/Topic912941-4-1.aspx</link><description>Привожу пример решения (2 варианта) вышеприведенной задачи:&lt;P&gt;VB:&lt;/P&gt;&lt;P&gt;[code]&lt;/P&gt;&lt;P&gt;Dim HttpReq As New MSXML2.XMLHTTP&lt;BR&gt;Dim xmldoc As New MSXML2.DOMDocument&lt;/P&gt;&lt;P&gt;Call HttpReq.Open("POST", "&lt;A href="http://localhost/***/robotmail.asp"&gt;http://localhost/***/robotmail.asp&lt;/A&gt;", True)&lt;BR&gt;rQuery = MyStr&lt;BR&gt;&lt;BR&gt;'1 вариант:&lt;BR&gt;[code]&lt;BR&gt;HttpReq.setRequestHeader "Content-Type", "text/xml; Windows-1251"&lt;BR&gt;HttpReq.setRequestHeader "Content-Length", CStr(Len(rQuery))&lt;BR&gt;HttpReq.Send rQuery&lt;BR&gt;[/code]&lt;/P&gt;&lt;P&gt;'2 вариант:&lt;BR&gt;[code]&lt;BR&gt;HttpReq.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"&lt;BR&gt;HttpReq.Send "my_value=" &amp;amp; rQuery&lt;BR&gt;[code]&lt;BR&gt;&lt;BR&gt;Do While HttpReq.readyState &amp;lt;&amp;gt; 4&lt;BR&gt;    bufer_= DoEvents()&lt;BR&gt;Loop&lt;/P&gt;&lt;P&gt;[/code]&lt;/P&gt;&lt;P&gt;в файле приема данных .asp читаю передачу так:&lt;/P&gt;&lt;P&gt;[code]&lt;BR&gt;&lt;BR&gt;'для 1 варианта:&lt;BR&gt;[code]&lt;BR&gt;a = Request.BinaryRead(Request.TotalBytes) &lt;BR&gt;For nIndex = 1 to LenB(a) &lt;BR&gt;   PostData = PostData &amp;amp; Chr(AscB(MidB(a,nIndex,1))) &lt;BR&gt;Next &lt;BR&gt;[/code]&lt;/P&gt;&lt;P&gt;'для 2 варианта:&lt;BR&gt;[code]&lt;BR&gt;PostData=Request.Form("My_value")&lt;BR&gt;[/code]&lt;/P&gt;&lt;P&gt;If Len(PostData)&amp;gt;0 Then&lt;BR&gt;sch = "&lt;A href="http://schemas.microsoft.com/cdo/configuration/"&gt;http://schemas.microsoft.com/cdo/configuration/&lt;/A&gt;"&lt;BR&gt;set objMsg = CreateObject("CDO.Message")&lt;BR&gt;set objConf = CreateObject("CDO.Configuration")&lt;BR&gt;Set objFlds = objConf.Fields&lt;BR&gt;With objFlds&lt;BR&gt;            .Item(sch &amp;amp; "sendusing") = 2&lt;BR&gt;            .Item(sch &amp;amp; "smtpserver") = "smtp.yandex.ru"&lt;BR&gt;            .Item(sch &amp;amp; "smtpserverport") = 25&lt;BR&gt;            .Item(sch &amp;amp; "sendusername") = "aaa"&lt;BR&gt;            .Item(sch &amp;amp; "sendpassword") = "***"&lt;BR&gt;            .Item(sch &amp;amp; "smtpauthenticate") = 1&lt;BR&gt;            .Item(sch &amp;amp; "smtpusessl") = "False"&lt;BR&gt;            .Item(sch &amp;amp; "smtpconnectiontimeout") = 60&lt;BR&gt;  .Update&lt;BR&gt;End With&lt;/P&gt;&lt;P&gt;With objMsg&lt;BR&gt;  Set .Configuration = objConf&lt;BR&gt;  .To = "&lt;A href="mailto:sss2006@yandex.ru"&gt;sss2006@yandex.ru&lt;/A&gt;" &lt;BR&gt;  .From = "админ&amp;lt;&lt;A href="mailto:aaa@yandex.ru"&gt;aaa@yandex.ru&lt;/A&gt;&amp;gt;"&lt;BR&gt;  .Subject = "письмецо" &lt;BR&gt;  .TextBody = PostData&lt;BR&gt;  '.HTMLBody = PostData&lt;BR&gt;  .TextBodyPart.Charset = "windows-1251"&lt;BR&gt;  '.Addattachment "c:\"&lt;BR&gt;  .Fields("urn:schemas:mailheader:disposition-notification-to") = "&lt;A href="mailto:aaa@yandex.ru"&gt;aaa@yandex.ru&lt;/A&gt;"&lt;BR&gt;  .Fields("urn:schemas:mailheader:return-receipt-to") = "aaa&lt;A href="mailto:aaa@yandex.ru"&gt;@yandex.ru&lt;/A&gt;" &lt;BR&gt;  .DSNOptions = 14&lt;BR&gt;  .Fields.update&lt;BR&gt;  .Send&lt;BR&gt;  flag=1&lt;BR&gt;End With&lt;/P&gt;&lt;P&gt;Set objFlds=Nothing&lt;BR&gt;Set objMsg=Nothing&lt;BR&gt;Set objConf=Nothing&lt;BR&gt;End If&lt;BR&gt;&lt;BR&gt;'.....&lt;/P&gt;&lt;P&gt;[code]&lt;BR&gt;&lt;/P&gt;&lt;P&gt;Оба варианта благополучно работают. &lt;BR&gt;Теперь самое главное:&lt;BR&gt;[b]Почему письмо приходит в каракулях????[/b]&lt;BR&gt;С этого наверное надо было б начать :)</description><pubDate>Sat, 05 May 2007 08:43:01 GMT</pubDate><dc:creator>karambol</dc:creator></item><item><title>передача большых объемов данных c помощу MSXML2.XMLHTTP</title><link>http://www.relib.com/forums/Topic912941-4-1.aspx</link><description>Есть задача:&lt;br&gt;VBA - рассылка больших объемов текста. Работа в локальной сети без привязок, к сторонним компонентам, к файрволам и т.д.&lt;br&gt;&lt;br&gt;Решаю так:&lt;br&gt;CDO - организация самой рассылки.&lt;br&gt;MSXML2.XMLHTTP - передача данных.&lt;br&gt;Данные отправляю по MSXML2.ServerXMLHTTP на ASP, который принимает двнные и организует рассылку по переданным параметрам и данным (с VBA по локалке не работает CDO). Затем страница выдает обратно XML данные-отчет, который принимается и обрабатывается программой.&lt;br&gt;&lt;br&gt;Проблема - в url нельзя передавать большой объем данных. Пробую вызывать запрос методом "Post" + заголовки Http. Сразу ругается. Может кто-нить уже использует такой метод передачи данных? Поделитесь исходником плз. Как на ASP стороне прочитать/загрузить переданные данные? Или может все гораздо проще решается?&lt;br&gt;&lt;br&gt;Заранее благодарен.&lt;br&gt;&lt;br&gt;</description><pubDate>Thu, 03 May 2007 11:27:18 GMT</pubDate><dc:creator>karambol</dc:creator></item></channel></rss>