I'm not too familiar with asp but I was told by dydacomp to host a asp file to push data from yahoo to our local machine. The local machine is not secure so I figured a cheap way would be to get a webhost and add ssl. Buttt I'm getting an error on shared windows host; http://projecta.w05.winhost.com/yahoo/Order.asp I know if I was running windows server in house I would not have a problem, but I have no idea how to install Msxml2.DOMDocument.4.0. Does anyone know any host that will run this file successfully. I found that 1and1 host in the uk uses Microsoft.XMLHTTP and MSXML2.XMLHTTP, but I'm not sure if that will even work. Or I can just edit the file to make it work. Any help appreciated. thanks the full code can be seen here; <%@ Language="VBSCRIPT" %> <% Dim ByteCount, BinRead ByteCount = Request.TotalBytes BinRead = Request.BinaryRead(ByteCount) tmptxt = SimpleBinaryToString(BinRead) Set oXml = Server.CreateObject("Msxml2.DOMDocument.4.0") Set oXml2 = Server.CreateObject("Msxml2.DOMDocument.4.0") oXml.async = false oXml.validateOnParse = false oXml.resolveExternals = false oXml.preserveWhiteSpace = true oXml2.async = false oXml2.validateOnParse = false oXml2.resolveExternals = false oXml2.preserveWhiteSpace = true ' Get order number oXml.LoadXML(tmptxt) Set oStore = oXml.selectSingleNode("/OrderList").getAttributeNode("StoreAccountName") Set oOrder = oXml.selectSingleNode("//Order") Set oOrderID = oOrder.getAttributeNode("id") oXml2.LoadXML("<?xml version=""1.0"" encoding=""UTF-8"" ?><OrderList></OrderList>") Set oOrderList = oXml2.selectSingleNode("/OrderList") Set oStore2 = oXml2.createAttribute("StoreAccountName") oStore2.text = oStore.text oOrderList.attributes.SetNamedItem(oStore2) oOrderList.appendChild(oOrder) StrFileName = oOrderID.text+".xml" oXml2.save(Server.MapPath(StrFileName)) 'Create xml file with order id as file name 'StrPhysicalPath = Server.MapPath(StrFileName) 'set objFileName = CreateObject("Scripting.FileSystemObject") 'set objFileNameTS = objFileName.CreateTextFile(StrPhysicalPath) 'objFileNameTS.Writeline tmptxt 'objFileNameTS.Close 'set objFileName = nothing 'set objFileNameTS = nothing oXml.LoadXML("<?xml version=""1.0"" encoding=""UTF-8"" ?><LastOrder></LastOrder>") Set oLastOrder = oXml.selectSingleNode("/LastOrder") oLastOrder.text = oOrderID.text oXml.save(Server.MapPath(oStore.text+"-"+"LastOrder.xml")) Set oXml = nothing Set oXml2 = nothing Set oStore = nothing Set oOrder = nothing Set oOrderID = nothing Set oOrderList = nothing Set oStore2 = nothing Set oLastOrder = nothing Function SimpleBinaryToString(Binary) 'SimpleBinaryToString converts binary data (VT_UI1 | VT_ARRAY Or MultiByte string) 'to a string (BSTR) using MultiByte VBS functions Dim I, S For I = 1 To LenB(Binary) S = S & Chr(AscB(MidB(Binary, I, 1))) Next SimpleBinaryToString = S End Function %> Code (markup):
Not sure why you are using classic ASP in this day and age. If your creating something new then your 99% of the time better off going for asp.Net if your wanting to use the microsoft stack. What is it you are actually wanting to achieve?
Im not, the code was sent to me from dydacomp ( a backend ecommerce management solution) they are stuck in the 90's, but the code supposedly works for others, i just cant seem to get it to work. I made no adjustments to the code. Would like to know if its even possible to run this code successfully.
MSXML 4.0 may not be installed. If it is maybe a 32-bit/64-bit issue the AppPool would have to be x86. You could also try to create the object "Msxml2.DOMDocument.2.0" instead of "Msxml2.DOMDocument.4.0" by changing the appropriate string in the above code.