Results 1 to 18 of 18

Thread: NetMeeting CLSID

  1. #1

    Thread Starter
    Need-a-life Member Mc Brain's Avatar
    Join Date
    Apr 2000
    Location
    Buenos Aires, Argentina
    Posts
    6,808

    NetMeeting CLSID

    Does anybody understand this code?

    <object ID=NetMeeting CLASSID="CLSID:3E9BAF2D-7A79-11d2-9334-0000F875AE17" width="244" height="158"><PARAM NAME = "MODE" VALUE = "DataOnly"></object>

    That seems to add a netmeeting object in an htm page. Is there any way to get the same in a form? If so, how?
    Emiliano F. Martín


    If a post has helped you then please Rate it! (and give the user points he/she deserves by clicking on the image).
    Encourage the person who helped you to keep doing it, and give him the points he deserves.


    MP3 Organizer: Freeware to logically organize all your MP3s.

  2. #2
    Guru Aaron Young's Avatar
    Join Date
    Jun 1999
    Location
    Red Wing, MN, USA
    Posts
    2,177
    The code you've entered is like you said, for HTML, it makes a
    reference to the Netmeeting Scripting API ActiveX Object which is
    the same object you can get a reference to in a VB form.

    However it only gives you "Basic" functionality, i.e. "CallTo", "LeaveConference"

    For much more flexability you need to use the COM API interface
    but it's not well documentented from a VB standpoint and I'm
    fairly sure (not 100%) that it's not directly accessible through VB.

  3. #3

    Thread Starter
    Need-a-life Member Mc Brain's Avatar
    Join Date
    Apr 2000
    Location
    Buenos Aires, Argentina
    Posts
    6,808

    Thought so!!

    I was wondering if I could get a control in a form, like it can be done in HTM.
    Emiliano F. Martín


    If a post has helped you then please Rate it! (and give the user points he/she deserves by clicking on the image).
    Encourage the person who helped you to keep doing it, and give him the points he deserves.


    MP3 Organizer: Freeware to logically organize all your MP3s.

  4. #4
    Guru Aaron Young's Avatar
    Join Date
    Jun 1999
    Location
    Red Wing, MN, USA
    Posts
    2,177
    There's no control, but you can add a reference to the NetMeeting 1.1 Type Library which gives you access to a NetMeeting Object with Events, see my example in this thread.

    If you can't find the reference in the list, locate "conf.exe" in the NetMeeting Folder.

  5. #5

    Thread Starter
    Need-a-life Member Mc Brain's Avatar
    Join Date
    Apr 2000
    Location
    Buenos Aires, Argentina
    Posts
    6,808
    Originally posted by Aaron Young
    There's no control, but you can add a reference to the NetMeeting 1.1 Type Library which gives you access to a NetMeeting Object with Events, see my example in this thread.

    If you can't find the reference in the list, locate "conf.exe" in the NetMeeting Folder.
    I've seen that thread already. I was wondering if I could open it within a form, instead of that way.
    Emiliano F. Martín


    If a post has helped you then please Rate it! (and give the user points he/she deserves by clicking on the image).
    Encourage the person who helped you to keep doing it, and give him the points he deserves.


    MP3 Organizer: Freeware to logically organize all your MP3s.

  6. #6
    PowerPoster
    Join Date
    Aug 2000
    Location
    IN SILENCE
    Posts
    6,441

    Well

    Mc Brain : Did I spark an interest in Netmeeting?
    Remaining quiet down here !!!

    BRAD HAS GIVEN ME THE ULTIMATIVE. I have chosen to stay....

  7. #7

    Thread Starter
    Need-a-life Member Mc Brain's Avatar
    Join Date
    Apr 2000
    Location
    Buenos Aires, Argentina
    Posts
    6,808
    Not that much... I was asked for it, remember?
    Emiliano F. Martín


    If a post has helped you then please Rate it! (and give the user points he/she deserves by clicking on the image).
    Encourage the person who helped you to keep doing it, and give him the points he deserves.


    MP3 Organizer: Freeware to logically organize all your MP3s.

  8. #8
    PowerPoster
    Join Date
    Aug 2000
    Location
    IN SILENCE
    Posts
    6,441

    Well

    Originally posted by Mc Brain
    Not that much... I was asked for it, remember?
    So this thread is for me?
    Remaining quiet down here !!!

    BRAD HAS GIVEN ME THE ULTIMATIVE. I have chosen to stay....

  9. #9
    Guru Aaron Young's Avatar
    Join Date
    Jun 1999
    Location
    Red Wing, MN, USA
    Posts
    2,177
    ok, now I see what you're after.
    Well, I guess you could add a WebBrowser control and use the HTML script to get it "in" your form.

    Or you could use the API to grab the NetMeeting Window and make a Picturebox on your Form the Parent.

  10. #10

    Thread Starter
    Need-a-life Member Mc Brain's Avatar
    Join Date
    Apr 2000
    Location
    Buenos Aires, Argentina
    Posts
    6,808
    Yes... that was the other way I was thinking of.
    Emiliano F. Martín


    If a post has helped you then please Rate it! (and give the user points he/she deserves by clicking on the image).
    Encourage the person who helped you to keep doing it, and give him the points he deserves.


    MP3 Organizer: Freeware to logically organize all your MP3s.

  11. #11

    Thread Starter
    Need-a-life Member Mc Brain's Avatar
    Join Date
    Apr 2000
    Location
    Buenos Aires, Argentina
    Posts
    6,808

    Re: Well

    Originally posted by James Stanich
    So this thread is for me?
    I don't know.... If you're asking if you're the one who asked it... the answer is no.
    Emiliano F. Martín


    If a post has helped you then please Rate it! (and give the user points he/she deserves by clicking on the image).
    Encourage the person who helped you to keep doing it, and give him the points he deserves.


    MP3 Organizer: Freeware to logically organize all your MP3s.

  12. #12

    Thread Starter
    Need-a-life Member Mc Brain's Avatar
    Join Date
    Apr 2000
    Location
    Buenos Aires, Argentina
    Posts
    6,808
    On this thread: http://www.vbforums.com/showthread.p...hreadid=114650

    Originally posted by Mc Brain
    I was asked, if possible, to vinculate Netmeeting with my app. This would be used to have an "On-line help" (with the support of someone who knows on the other side)
    Emiliano F. Martín


    If a post has helped you then please Rate it! (and give the user points he/she deserves by clicking on the image).
    Encourage the person who helped you to keep doing it, and give him the points he deserves.


    MP3 Organizer: Freeware to logically organize all your MP3s.

  13. #13
    PowerPoster
    Join Date
    Aug 2000
    Location
    IN SILENCE
    Posts
    6,441

    Well

    Originally posted by Aaron Young
    ok, now I see what you're after.
    Well, I guess you could add a WebBrowser control and use the HTML script to get it "in" your form.

    Or you could use the API to grab the NetMeeting Window and make a Picturebox on your Form the Parent.
    Aaron : Have you ever implemented anything like this before?
    Remaining quiet down here !!!

    BRAD HAS GIVEN ME THE ULTIMATIVE. I have chosen to stay....

  14. #14
    Guru Aaron Young's Avatar
    Join Date
    Jun 1999
    Location
    Red Wing, MN, USA
    Posts
    2,177
    I've never implemented anything with Netmeeting before, never
    had to.

    NetMeeting Zone seems to be a good resource.

    Here's an example of using the GetParent() API to
    manipulate the Interface into a Form.
    VB Code:
    1. Option Explicit
    2.  
    3. Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
    4. Private Declare Function GetTopWindow Lib "user32" (ByVal hwnd As Long) As Long
    5. Private Declare Function GetNextWindow Lib "user32" Alias "GetWindow" (ByVal hwnd As Long, ByVal wFlag As Long) As Long
    6. Private Declare Function MoveWindow Lib "user32" (ByVal hwnd As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal bRepaint As Long) As Long
    7. Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
    8. Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
    9.  
    10. Private Const GW_HWNDNEXT = 2
    11. Private Const GW_HWNDFIRST = 0
    12.  
    13. Private Const WM_CLOSE = &H10
    14.  
    15. Private mlHwnd As Long
    16.  
    17. Private WithEvents NetMeetingObject As NetMeeting
    18.  
    19. Private Sub Form_Load()
    20.   ' Resize Picturebox to be the
    21.   ' same as the Video Screen
    22.   ScaleMode = vbPixels
    23.   Picture1.Width = 177
    24.   Picture1.Height = 145
    25.   Picture1.ScaleMode = vbPixels
    26.  
    27.   ' Create a new NetMeeting Object
    28.   Set NetMeetingObject = New NetMeeting
    29.   ' Undock a copy of the interface
    30.   NetMeetingObject.UnDock
    31.   ' Wait for the Window to become available
    32.   mlHwnd = WaitForWindowCaption("NetMeeting - Not in a Call")
    33.   ' If the Window was found..
    34.   If mlHwnd Then
    35.     ' Place the Interface within the Picturebox on this Form
    36.     Call SetParent(mlHwnd, Picture1.hwnd)
    37.     ' Reposition the Interface so only the Video Window is Visible
    38.     Call MoveWindow(mlHwnd, -12, -87, Picture1.ScaleWidth, Picture1.ScaleHeight, True)
    39.   Else
    40.     ' Release the Object
    41.     Set NetMeetingObject = Nothing
    42.   End If
    43. End Sub
    44.  
    45. Private Sub Form_Unload(Cancel As Integer)
    46.   ' Make sure to cancel a call if in one.
    47.   If cmdClose.Enabled Then cmdClose_Click
    48.   ' Release the Object
    49.   Set NetMeetingObject = Nothing
    50.   ' If the Window was being Managed, Close it
    51.   If mlHwnd <> 0 Then
    52.     Call SendMessage(mlHwnd, WM_CLOSE, 0, ByVal 0&)
    53.     mlHwnd = 0
    54.   End If
    55. End Sub
    56.  
    57. Private Sub cmdOpen_Click()
    58.   ' Connect to some other Client
    59.   NetMeetingObject.CallTo "0.0.0.0"
    60. End Sub
    61.  
    62. Private Sub cmdClose_Click()
    63.   ' If there's a NetMeeting Object..
    64.   If Not NetMeetingObject Is Nothing Then
    65.     ' If in a Call..
    66.     If NetMeetingObject.IsInConference Then
    67.       ' Close the Call
    68.       NetMeetingObject.LeaveConference
    69.     End If
    70.   End If
    71. End Sub
    72.  
    73. Private Sub NetMeetingObject_ConferenceStarted()
    74.   Debug.Print "Call Initiated"
    75.   cmdOpen.Enabled = False
    76.   cmdClose.Enabled = True
    77. End Sub
    78.  
    79. Private Sub NetMeetingObject_ConferenceEnded()
    80.   Debug.Print "End of Call"
    81.   cmdOpen.Enabled = True
    82.   cmdClose.Enabled = False
    83. End Sub
    84.  
    85. Private Function WaitForWindowCaption(ByVal sCaption As String) As Long
    86.   Dim lhWnd As Long
    87.   Dim sText As String
    88.   Dim tTimer As Single
    89.  
    90.   ' Wait for a Window with the specified
    91.   ' Caption to be loaded.
    92.   ' (could have used Window Enumeration, but
    93.   ' This allows the code to be in a Form's
    94.   ' code module.)
    95.   tTimer = Timer
    96.   Do
    97.     If lhWnd = 0 Then
    98.       lhWnd = GetTopWindow(0)
    99.     Else
    100.       lhWnd = GetNextWindow(lhWnd, GW_HWNDNEXT)
    101.     End If
    102.     sText = Space(260)
    103.     sText = Left(sText, GetWindowText(lhWnd, ByVal sText, 260))
    104.   Loop While StrComp(Left(sText, Len(sCaption)), sCaption, vbTextCompare) <> 0 And ((Timer - tTimer) < 10)
    105.  
    106.   WaitForWindowCaption = IIf(StrComp(Left(sText, Len(sCaption)), sCaption, vbTextCompare) = 0, lhWnd, 0)
    107. End Function

  15. #15
    PowerPoster
    Join Date
    Aug 2000
    Location
    IN SILENCE
    Posts
    6,441

    Well

    Nice code Aaron. I will give it a go early next week. Still wish I could figure out this XP to 2k thing...
    Remaining quiet down here !!!

    BRAD HAS GIVEN ME THE ULTIMATIVE. I have chosen to stay....

  16. #16
    New Member
    Join Date
    Oct 2002
    Location
    Netherlands
    Posts
    13

    looking for something familiar

    I'm looking for a way to add the netmeeting functions (i don't need all, but when you get one, you can get the others) in a vb application. So I don't wanna use netmeeting itself, but its dlls or whatever files it has it's functions in.
    I found 1 vb application that did this, but again, the ocx code wasn't available. So I know it is possible to do, but I don't know how exactly.
    *Presses your nose* "Tooooot!"

  17. #17
    PowerPoster
    Join Date
    Aug 2000
    Location
    IN SILENCE
    Posts
    6,441

    Well

    Aaron's code:

    VB Code:
    1. Option Explicit
    2.  
    3. Private WithEvents NetMeetingObject As NetMeeting
    4.  
    5. Private Sub Command1_Click()
    6.   Set NetMeetingObject = New NetMeeting
    7.   NetMeetingObject.CallTo "192.168.0.136"
    8. End Sub
    9.  
    10. Private Sub Command2_Click()
    11.   If Not NetMeetingObject Is Nothing Then
    12.     If NetMeetingObject.IsInConference Then
    13.       NetMeetingObject.LeaveConference
    14.     End If
    15.   End If
    16.   Set NetMeetingObject = Nothing
    17. End Sub
    18.  
    19. Private Sub NetMeetingObject_ConferenceStarted()
    20.   Debug.Print "Call Initiated"
    21. End Sub
    22.  
    23. Private Sub NetMeetingObject_ConferenceEnded()
    24.   Debug.Print "End of Call"
    25. End Sub
    Remaining quiet down here !!!

    BRAD HAS GIVEN ME THE ULTIMATIVE. I have chosen to stay....

  18. #18
    New Member
    Join Date
    Mar 2005
    Posts
    3

    Re: Conversion from VB to VB.Net

    Aaron, i have problem on your code after convert it from VB to VB.Net. there is some upgrade issue in the vb.net and i am having problem fixing it. can u help me or anyone can help. And i have found tat Window xp already have the netmeeting 3. Only thing is to install it by click the start button then open run. there type conf and press ok. the netmeeting 3 setup will pop up.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width