programming Cubase from the outside on Windows

hello all!
nowadays Office apps (Excel, Word…) can be controlled from the outside
with Visual Studio.
is there a possibility with Cubase: (DDE, OLE, .net and so on) ?
the old and basic method Sendkeys must work
but SendKeys allows to write in an app
it doesn’t allow to read what was written perviously
many thanks
i have Cubase 5 and later Cubase 7!

I think you can do that by using the Win API. You’d have to Spy on Cubase and see what’s exposed though. I did a lot of that kind of thing with various apps and it works pretty well. You can even, in some cases, insert your custom toolbar or whatever directly inside the application space using the SetParent APi.

Play around with it. I was actually (in the past) considering adding a custom toolbar to Cubase for macros. Never got around to trying it though. If you start doing something post here and maybe i can help, I still have the Nuendo 5 demo.

I’m afraid there is no documented OLE/DDE interface for Cubase. I think the easiest way to interact with Cubase is with Generic Remote interface. Otherwise I’m afraid you’ll have follow Audiocave’s advice and trace what’s happening in Cubase’s windows with Spy (or similar tool) and then emulate them (or even capture them by hooking into Windows message dispatcher).

Same here … but it was zillion years ago … in Windows 3. Even wrote a nice little application which added context-sensitive menus (on right mouse button, which wasn’t used in Win3) for various applications. Those were the times … sigh.

Right. You can send messages to just about anything you can actually identify. Some of the windows may be (dunno in Cubase) titled in a static way which makes it easier, others may require some clever title parsing to find a windows and return the handle using the FindWindow API or similar.

But SendKeys is generally not a good method for sending keystrokes because it requires the target to have focus. SendMessage or PostMessage API’s work better for sending keystrokes of for sending mouse clicks and things. Here’s the SetParent API below, it’s pretty easy to use if you understand the API, how handles and all that work.

Here’s a custom macro editor I wrote for Studio One using those same methods. S1 doesn’t have macros so I wrote my own add-in for it. It should work (the methods used there) with most any Win application. It’s just a small *.exe file I launch after launching the DAW for editing and firing macros with SendMessage.

So those buttons are on a small Win form with a transparent background set over the DAW’s title bar with the SetParent API on launch, so they move with the main window and feel like part of the application.

many thanks to Jarno and AudioCave
for their advices
and for taking the time to post a demo
i’m 6 months late to answer (because of troubles)
all the best