JavaScript - Activexobject Difficulties
I have a small bit of script that I want to run on an internal page so the user doesn't have to type in their login into a form:
Code: <script type="text/javascript"> <!-- var WinNetwork = new ActiveXObject("WScript.Network"); document.HTML_FORM.User__bID.value=WinNetwork.userName; document.HTML_FORM.Email__bAddress.value=document.HTML_FORM.User__bID.value+"@domain.com"; //--> </script> When I run this on my local PC, I get the "Active X is bad!" warning, but when I say OK, the script works fine. When I move it to the server it's going to run on and start the script, I get an "Automation Server can't create object" error and the script doesn't work at all. Can someone give an idea of how to get the code to work when running from somewhere other than local? I would also be nice if I could get around the ActiveX windows poping up all the time. That might alarm less technical users, but I'd be happy with any advice I can get on this issue. Thanks! Similar TutorialsWhole thread based on my mistake.
I have a piece of javascript that attaches a PDF document to an outlook form. However the PDF that I am pulling has a default name such as 'test' and I would like to change it to say 'client.pdf'. Is this possible in the script below? var theApp = new ActiveXObject("Outlook.Application"); var theMailItem = theApp.CreateItem(0); theMailItem.to = "test@test.com" theMailItem.Subject = "test"; theMailItem.Attachments.add("http://someURL/test?abc.pdf"); It currently saves the attachment as 'test' instead of abc.pdf (i.e. it seems to pick up the text before the question mark). Anyway of changing/settign the name differently? Many thanks Hi I am trying to load html stream directly into webbrowser in delphi. The html contains java script. It loads xml and xsl files and display the xml content in the web browser. I got an error, says access denied for the command xmlDoc.load(fname); If I save the html into a file, test.html, and double click it, it is fine, no problem. The code is actually copied from w3schools.com. the html code as followed: <html> <head> <script> function loadXMLDoc(fname){var xmlDoc; if (window.ActiveXObject) { xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); } else { alert('Your browser cannot handle this script'); } xmlDoc.async=false; xmlDoc.load(fname); return(xmlDoc); } function displayResult() { xml=loadXMLDoc("catalog.xml"); xsl=loadXMLDoc("catalog.xsl"); if (window.ActiveXObject) { ex=xml.transformNode(xsl); document.getElementById("example").innerHTML=ex; } } </script> </head> <body id="example" onLoad="displayResult()"> </body> </html> The delphi code is procedure TForm1.WBLoadHTML(WebBrowser: TWebBrowser; HTMLCode: string) ; var v: OleVariant; HTMLDocument: IHTMLDocument2; begin memo1.Lines.LoadFromFile('d:\test\htmltxtold.html'); HTMLCode := memo1.Text; WebBrowser1.Navigate('about:blank') ; HTMLDocument := WebBrowser.Document as IHTMLDocument2; v := VarArrayCreate([0, 0], varVariant); v[0] := HTMLCode; HTMLDocument.Write(PSafeArray(TVarData(v).VArray)); HTMLDocument.Close; end; Thanks a lot var navOpenInBackgroundTab = 0x1000; var objIE = new ActiveXObject("InternetExplorer.Application"); objIE.Navigate2("https://URL", navOpenInBackgroundTab); objIE.Navigate2("http://URL"); objIE.Navigate2("https://URL", navOpenInBackgroundTab); objIE.Visible = true; I found the above script on a different site and have a couple of problems. 1) I find if I add more than 3 URLs to open, I get errors and the sites don't open. I verified each line is exactly the same except for the URL that needs to open. 2) My work must use IE 32-bit for our systems to work properly. When I click a link from my email, IE 32-bit opens the link. The problem is that when I run this .js file, the URLs open in IE 64-bit. These are systems I use at work and they do not work in IE 64-bit. If anyone can help me figure out how to open more than 3 URLs without errors and how to open IE 32-bit I would be grateful. Thanks Mike Hi, I am wanting to know exactly what happens when you create an ActiveXObject. At the moment all I managed to find out is that it will run the Program specified by the ProgID: Quote: This code starts the application creating the object (in this case, a Microsoft Excel worksheet). Once an object is created, you refer to it in code using the object variable you defined. http://msdn.microsoft.com/en-us/library/6958xykx.aspx Does it load the program like normal or does it load it within IE's memory? For example if the program crashes then why does IE crash. I would ask more questions but really I am sure there is more to it than simply loading the program. Thanks for any help in helping me get a better understanding. |