bcp5190
asked on
How can i test com with vbscript or sqlserver?
I have created a ActiveX COM Object. now how can i move it to different server without creating installation program.
I used wininet.dll api in COM but all IE coms with wininet.dll. I used wininet.dll to download data from website. Do i need to create an instllation program to run it from different machine.
It woks greate from my machine but how can i test it from different machine without installing it. can i test by just copying dll file in a second server and using vbscript or sql server.
In second server following code works on asp but it fails on sqlserver job. Why? In development machine following code works in ASP and Sql server.
Dim sURL
Dim oWininet
Set oWininet = CreateObject("ObjWininet.D ownload")
sURL = "http://www.yahoo.com"
strusername = Username
strPassword = Password
Call oWininet.Save(sURL, strusername, strPassword, "e:\temp\yahoo.htm")
Set oWininet = Nothing
I used wininet.dll api in COM but all IE coms with wininet.dll. I used wininet.dll to download data from website. Do i need to create an instllation program to run it from different machine.
It woks greate from my machine but how can i test it from different machine without installing it. can i test by just copying dll file in a second server and using vbscript or sql server.
In second server following code works on asp but it fails on sqlserver job. Why? In development machine following code works in ASP and Sql server.
Dim sURL
Dim oWininet
Set oWininet = CreateObject("ObjWininet.D
sURL = "http://www.yahoo.com"
strusername = Username
strPassword = Password
Call oWininet.Save(sURL, strusername, strPassword, "e:\temp\yahoo.htm")
Set oWininet = Nothing
listening...
It fails with which error?
If it is 429, then some DLLs are not properly registered (or are not there at all).
Also, I see that you have "e:\temp\yahoo.htm". Does this exists on your other server?
If it is 429, then some DLLs are not properly registered (or are not there at all).
Also, I see that you have "e:\temp\yahoo.htm". Does this exists on your other server?
ASKER
I have temp folder in e:\ drive in second server. And From sql server job above code does not fail but it downloads blank page but from asp page same code successfully downloads website.
ASKER
Here is some api call i'm using in com object to downlaod data from website.
Private Declare Function HttpOpenRequest Lib "wininet.dll" Alias "HttpOpenRequestA" (ByVal hHttpSession As Long, ByVal sVerb As String, ByVal sObjectName As String, ByVal sVersion As String, ByVal sReferer As String, ByVal something As Long, ByVal lFlags As Long, ByVal lContext As Long) As Long
Private Declare Function HttpSendRequest Lib "wininet.dll" Alias "HttpSendRequestA" (ByVal hHttpRequest As Long, ByVal sHeaders As String, ByVal lHeadersLength As Long, ByVal sOptional As String, ByVal lOptionalLength As Long) As Integer
Private Declare Function InternetReadFile Lib "wininet.dll" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer
Private Declare Function InternetSetOption Lib "wininet.dll" Alias "InternetSetOptionA" (ByVal hInternet As Long, ByVal lOption As Long, ByRef sBuffer As Any, ByVal lBufferLength As Long) As Integer
......
Private Declare Function HttpOpenRequest Lib "wininet.dll" Alias "HttpOpenRequestA" (ByVal hHttpSession As Long, ByVal sVerb As String, ByVal sObjectName As String, ByVal sVersion As String, ByVal sReferer As String, ByVal something As Long, ByVal lFlags As Long, ByVal lContext As Long) As Long
Private Declare Function HttpSendRequest Lib "wininet.dll" Alias "HttpSendRequestA" (ByVal hHttpRequest As Long, ByVal sHeaders As String, ByVal lHeadersLength As Long, ByVal sOptional As String, ByVal lOptionalLength As Long) As Integer
Private Declare Function InternetReadFile Lib "wininet.dll" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer
Private Declare Function InternetSetOption Lib "wininet.dll" Alias "InternetSetOptionA" (ByVal hInternet As Long, ByVal lOption As Long, ByRef sBuffer As Any, ByVal lBufferLength As Long) As Integer
......
Just a guess, Save method is synchronius? Maybe a time out is present in on server and not in other.
And a question:
Couldn't you use ftpgetfile instead?
Couldn't you use ftpgetfile instead?
ASKER
I try
Dim sURL
Dim oWininet
Set oWininet = CreateObject("ObjWininet.D ownload")
sURL = "http://www.yahoo.com"
strusername = Username
strPassword = Password
Call oWininet.Save(sURL, strusername, strPassword, "e:\temp\yahoo.htm")
Set oWininet = Nothing
code in Data transfer Services packafe and place abouve code in activex script and it works fine in both machine.
I'm only having a problem in Sql server Agent Jobs scripts.
If i create a job for local package the it fails. but if i run local package manually it works
Dim sURL
Dim oWininet
Set oWininet = CreateObject("ObjWininet.D
sURL = "http://www.yahoo.com"
strusername = Username
strPassword = Password
Call oWininet.Save(sURL, strusername, strPassword, "e:\temp\yahoo.htm")
Set oWininet = Nothing
code in Data transfer Services packafe and place abouve code in activex script and it works fine in both machine.
I'm only having a problem in Sql server Agent Jobs scripts.
If i create a job for local package the it fails. but if i run local package manually it works
ASKER
Sorry i cannot use any other method for downloading.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Is there any specific setting i should check. Because if i create a package for above code then it works fine. It only fain when i run from SQL job
I don't know sorry. i never used SQL server.