Using another program within a xojo window

I don’t know if this is possible, and my search terms might have not been correct, but is it possible to run ANOTHER EXTERNAL program within an Xojo window?

For example, and off of the top of my head, let’s say I want to use VLC player WITHIN an Xojo Window, is that possible?

I saw some items speaking about Xojo.Core, but also saw threads saying it was no longer available.

Regards

MBS has a vlc plugin that allows you to use it directly inside your app. Nothing native. On macOS you can look at avfoundation. Again use mbs or write your own declares (a lot of work)

could be possible that the vlc installer also installs the web-brower plugins
and maybe the xojo html viewer could play this videos?

microsoft created a concept of Component Object Model 32 years ago.

there was a time that components was linked into a development project (VB6) and you can
just drop this into a window and have office excel,word or pdf viewer, very cool.
much of this things are deprecated today and was replaced as this one had a time in browsers few years.

This is possible but if the other program isn’t expecting its top-level window to be embedded in another window then it may cause problems. VLC in particular fully expects you to embed its video output window within your own window, and provides an API to do it on all supported platforms. Doing the same for a different program that isn’t expecting it will require digging into the platform’s API

See this old forum topic about embedding notepad.exe’s window in a Xojo window:

It uses the Windows API function SetParent to create the parent/child relationship between the two windows and SetWindowPos to set the child window’s coordinates and size to match the parent.

1 Like

When I wrote the OpenGL book for windows, the an independent window was needed to be embedded into a Xojo Windows.

Caution should be used as you may need to implement your own keyboard and mouse code. The OpenGL code ran much faster, very low latency, with increased performance.

This used C++ code that I created as three plugins that were used in Xojo. Ensure you code the hooks correctly, otherwise you could have significant performance issues.