Thanks Kannan, that was a great idea. I was able to use my form's CreateParams to create a handle with the method you posted. Unfortunately, there does not seem to be a viable way to get a CLR form to attach to the created handle as in MFC/ATL, so I'm left with a raw window without child controls, which knows nothing of CLR stuff. However, while subclassing I realised I could access the protected CreateHandle(), so I created a public method to call it externally. That worked, however it does not force handle creation for any of the child controls (as CreateControl() is supposed to), so I would have to subclass every one to create them too! This is an aggravating bug, since non-visible form creation is simple in C/C++, and CreateControl() is supposed to do this too. I remain open to further ideas, and will report this bug to Microsoft (though I'm sure they've heard this one before). Cheers