Hello,
I am sorry to bother you, but I need help with using COM controls.
My problem is not really with using QOLEOBJECT and QOLECONTAINER, I
understand fairly well how to use these. What I do not understand is how I
can find the properties, methods, and events of a particular control. For
example:

Dim Object as QOLEOBJECT
Object.CreateObject("Word.Basic")

How did you know to use "Word.Basic"?

Or another example:

Dim msHTML as QOLECONTAINER
msHTML.CreateObject("Shell.Explorer.1")

How did you know to use "Shell.Explorer"?

Using the program Dependency Walker to view msHTML.dll, I see nothing that
says "Shell.Explorer", so I assume that what I'm looking for is found
somewhere else.

I apologize for the dumb question, but it's been bugging for awhile now and
I still can't figure it out, so of coarse, all information will be GREATLY
appreciated.

_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com


I just found out that I have a COM viewer included with VC++. 

It can also be downloaded here
http://www.microsoft.com/com/resources/oleview.asp

It doesn't seem to have any documentation for the objects, but at
least it tells you what's there. 


See
http://download.microsoft.com/download/ole/ole2v/3.5/W351/EN-US/Ole2v.exe


I'd like to know how to access and read Outlook Address Book
using qoleobject and qolecontainer from my little program.
I've tried with:

$apptype console
DIM Object AS QOLEOBJECT
Dim ot As QOLEOBJECT
Dim mapi As QOLEOBJECT
Dim x As QOLEOBJECT

Print "outlook..."
Print Object.Create("Outlook.Application")
Print Object.getIDOfName("GetNameSpace")
Sleep 2
Print "invoke"
Print Object.invoke("GetNameSpace","MAPI",mapi)
Print mapi.getIDOfName("AddressLists.Count")

Print "NameSpace..."
Print mapi.Invoke("AddressLists.Count")

SLEEP 5
Print "Stop"
Input asfdsadf
End

I'll like any suggestion. Thanks
 


Hi,

I use the code and of course, it works. (Thanks for the tip).

Now im trying to change one variable of the Flash Movie.
Taking an example from JavaScript i can do it.
Works a little strange, because it behavior different of the
original JS idea.
Now i want to know how could i know whats thinks can be done in a
similar way, im talking about getting acceso to the 'object'
properties, actions,etc. Just like "SetVariable'.

The NEW code is:


CREATE Form AS QFORM
    Caption = "Swf"
    Center
    Visible = 1
    CREATE swf AS QOLECONTAINER
        CreateObject("ShockwaveFlash.ShockwaveFlash.5")
        movie= "c:\windows\escritorio\p1.swf"
        setvariable ("t","texto")
        height =200
width = 200
    END CREATE
    Visible = 0
END CREATE  

Form.ShowModal

swf.Free



You need to have an edit in the Flash Movie with a variable
named 'texto' (dynamic).
 


Hi,

For the Object "Explorer" you have these

PROPRETIES
----------
help
attach
busy
fullname
locationname
locationurl
name
offline
path
readystate
registerasbrowser
registerasdroptarget
silent
theatermode
toplevelcontainer
type
wherelc

METHODS
-------
Exec
GoBack
GoForward
GoHome
GoHome
Navigate
QueryStatusWB
Refresh

    CREATE msHTML AS QOLECONTAINER
        Align = 5
        createObject("Shell.Explorer.1")
    END CREATE       


This Works
----------
msHTML.LocationURL    returns the ... LocationURL
msHTML.Refresh     Refreshes the viewed page
msHTML.Navigate ("www.google.com")    view google page

It's posible too to INVOKE
msHTML.Invoke ("locationURL")  ' never tried ???


I've never been able to use Exec to SaveThe File
------------------------------------------------
msHTML.Exec 4, 2, "c:\\Tampon\\RQGoogle.Htm", 0  ' or msHTML.ExecWB ...

Nor CUT AND PASTE
msHtml.Invoke ("ExecCommand", 17, 0, 0, 0)  ' 17 = CUT
msHtml.Invoke ("ExecCommand", 12, 0, 0, 0)  ' 12 = paste

You MUST find a documentation on the ShockWavaFlash !

-------------------------------------------------------------------------

And BTW, I am calm :)

Jacques

 



This may help, but there's a lot of lore work... It will probably
be too slow for long texts until we have P IX 10000 MHz.

Jacques

' ----------------------------------
$ESCAPECHARS ON
$TYPECHECK ON
$INCLUDE "RAPIDQ.INC"
Declare Sub OnClose_frmRapidView
'
Sub DummyProc
End Sub
CREATE frmRapidView AS QFORM
     Autoscroll = false
     WindowState = wsMaximized
     Caption =  "Demo RQ & HTML"
     Visible = True
     WndProc = DummyProc
     CREATE msHTML AS QOLECONTAINER
         Align = alClient
         createObject("Shell.Explorer.1")
     END CREATE
     Visible = False
     Onclose = OnClose_frmRapidView
End Create

c = "about:<head><basefont face=\"courrier\"></head><body scroll=\"no\">"
c = c + "<center><br><h1>Text Out, Anything you want<BR> One more line<br>WILL BE TOO SLOW</center></h1>"
c = c + "<H2><HR><U>GOOD LUCK</U></H2></basefont></head>"
msHTML.navigate(c)



Sub OnClose_frmRapidView
     application.Terminate
     End
End Sub
'
' ********************************************
frmRapidView.ShowModal
' ********************************************
' -------------------------------------------------

Tommy Watt wrote:

> Anyone know if there is a control for RapidQ to view HTML?  It doesnt need to be a feature rich/full browser, just view HTML, particular colors and backgrounds of text, and fonts.  Speed is important.
>
> Thank you,
>
> Tommy
 



This may help, but there's a lot of lore work... It will probably
be too slow for long texts until we have P IX 10000 MHz.

Jacques

' ----------------------------------
$ESCAPECHARS ON
$TYPECHECK ON
$INCLUDE "RAPIDQ.INC"
Declare Sub OnClose_frmRapidView
'
Sub DummyProc
End Sub
CREATE frmRapidView AS QFORM
     Autoscroll = false
     WindowState = wsMaximized
     Caption =  "Demo RQ & HTML"
     Visible = True
     WndProc = DummyProc
     CREATE msHTML AS QOLECONTAINER
         Align = alClient
         createObject("Shell.Explorer.1")
     END CREATE
     Visible = False
     Onclose = OnClose_frmRapidView
End Create

c = "about:<head><basefont face=\"courrier\"></head><body scroll=\"no\">"
c = c + "<center><br><h1>Text Out, Anything you want<BR> One more line<br>WILL BE TOO SLOW</center></h1>"
c = c + "<H2><HR><U>GOOD LUCK</U></H2></basefont></head>"
msHTML.navigate(c)



Sub OnClose_frmRapidView
     application.Terminate
     End
End Sub
'
' ********************************************
frmRapidView.ShowModal
' ********************************************
' -------------------------------------------------

Tommy Watt wrote:

> Anyone know if there is a control for RapidQ to view HTML?  It doesnt need to be a feature rich/full browser, just view HTML, particular colors and backgrounds of text, and fonts.  Speed is important.
>
> Thank you,
>
> Tommy

 


You should be able to use QOleObject.  See the docs for an example.
You should be able to call its properties and methods much like you
do in VB.  However events I don't think are supported.

MSXML is a COM based dll.  The only functions it exports mostly
relate to registering the dll.

--- In rapidq@y..., Leo Dicaprio <Nadesom@y...> wrote:
>
> Under VB, after msxml.dll is included in the project,
> i can use it by
> Dim xml As New MSXML.DOMDocument
> and:
> xml.Load ("test.xml")
>
> Any idea under RQ?
> I cann't found the DLL's Export Table using Quick
> View.
 


Thanks.

I should read Yu' Doc ch.15. COM Programming.

Here is a code.

Another question now is how can we use xml under linux
with RQ.

DIM Obj AS QOLEOBJECT

Obj.CreateObject("Microsoft.XMLDOM")
Obj.load("car.xml")

print Obj.xml

showmessage "ok"

----- Original Message -----
From: "petek1827" <petek1827@yahoo.com>
To: <rapidq@yahoogroups.com>
Sent: Monday, February 25, 2002 3:21 PM
Subject: [rapidq] Re: use msxml.dll under rapidq


> You should be able to use QOleObject.  See the docs
for an example.
> You should be able to call its properties and
methods much like you
> do in VB.  However events I don't think are
supported.
>
 


Great!

Also i foud, that its possible to use CreateObject, which working
much faster and warantied, that it will supported by remote server.

Guys, look at this short example:

$APPTYPE CGI
$INCLUDE "INCLUDES/CGI.INC"

DIM ADODB AS QOLEOBJECT
DIM ConnString AS STRING
DIM strSQL AS STRING

ADODB.CREATEOBJECT("ADODB.Connection")

ConnString = "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=db1.mdb;"
ADODB.Open ConnString

RSF = ADODB.EXECUTE("SELECT * FROM SiteAdmin")
' -----------------------------------------------------------
' Next part not working:
DO
  RSF.MOVENEXT
  RESPONSEWRITE "<a href='?option=someaction'>" & RSF("DDD") & "</a>"
LOOP WHILE NOT RSF.EOF

So, im getting conecction to database (any DSN or DSN-less), im
allowed to execute SQL Queryes, but how to use Recordsets here?

Is any ideas about it?

--- In rapidq@y..., "edamian919" <edamian919@y...> wrote:
> hello, yes there's one way, you have to use the odbc driver for
> msaccess,
> On the weekend i'll send you an example
>
> bye
> --- In rapidq@y..., "bol_spider" <bol_spider@y...> wrote:
> > Hello, people!
> >
> > IS ANY WAY to use MS Access MDB bases?

 


' Declaring Application type
$APPTYPE CGI
' Including Web.Objects
$INCLUDE "OBJ_HTTP.INC"
' Including Rapid-Q Constants
$INCLUDE "RAPIDQ.INC"

' This line will break execution if file requested not by browser
IF REQUEST.HTTP_USER_AGENT ="" THEN END

' If requested by browser, generate response
' with proper status code.
' for IE you can generate always "200 OK" status, because IE
' don't see any difference in response codes.
RESPONSE.STATUS "200 OK"
' Declaring content type
RESPONSE.CONTENTTYPE "text/html"
' Also you can add/declare DocType when you using XML, WML and etc...
' And now send this generated header.
' Without sending header u will get CGI Error
RESPONSE.SENDHEADER

DIM USERNAME AS STRING
DIM PASSWORD AS STRING
' Here we looking for some values posted from browser
USERNAME = HTTP.GETVALUE("username")
PASSWORD = HTTP.GETVALUE("password")

DIM BUF AS STRING
' Now loading some page, which contains "keywords"
' We using keyword on page for automate content management process
' In this case we will nee to design only one page, which will be
' as basement for whole web site.
BUF = FSO.FILETOBUFFER("templates/t_index.htm")
' So, page loaded to buffer and now we processing keywords
BUF = REPLACESUBSTR$(BUF,"{@footer}","Copyright 2002")
' and now checking for user settings
' if we have a "guest", show him a login form, which also prepared
' as "template"
IF USERNAME="" AND PASSWORD ="" THEN
DIM LOGINFORMCONTENT AS STRING
LOGINFORMCONTENT = FSO.FILETOBUFFER
("templates/t_loginform.htm")
BUF = REPLACESUBSTR$(BUF,"{@header}","Please enter
your account details:")
BUF =
REPLACESUBSTR$(BUF,"{@menucontent}",LoginFormContent)
END IF
' Now we displaying generated HTML content to user and he will
' see it as normal web page.
RESPONSE.WRITE BUF
' Here small example of using "Response" object
RESPONSE.WRITE "<HR NOSHADE SIZE=1 COLOR=RED>"
RESPONSE.WRITE "REFERER: " & REQUEST.HTTP_REFERER & "<BR>"
RESPONSE.WRITE "PATH_TRANSLATED:" & REQUEST.PATH_TRANSLATED
& "<BR>"
RESPONSE.WRITE "REQUEST_METHOD: " & REQUEST.REQUEST_METHOD
& "<BR>"
RESPONSE.WRITE "QUERY_STRING: " & REQUEST.QUERY_STRING
& "<BR>"
RESPONSE.WRITE "DECODED STRING: " & HTTP.HTMLDECODE
(REQUEST.QUERY_STRING) & "<BR>"

 


Try VBS first to verify your COM installation:

DIM INETCONTROL
set INETCONTROL=wscript.CREATEOBJECT("InetCtlsObjects.Inet")

VBS has the best compatibility for MS COM. I ever found an object works fine with VBS but failed in PHP script. Maybe RQ also.

 Guidance

 

Exception EOleSysError in module fsodemo.exe at 0007E571.
Invalid class string.

DIM INETCONTROL AS QOLEOBJECT
INETCONTROL.CREATEOBJECT("InetCtlsObjects.Inet")

compiling fine, but execution faulted. is any ideas why?


 

Join Rapid-Q & B++ WebRing now! http://citymap.getmyip.com