2
내 System.Windows.Forms.Form을 관리되지 않는 C++ HWND의 자식 창으로 표시해야합니다. 이것은이 플러그인에 구현되는 방법입니다관리되지 않는 HWND의 자식으로 관리되는 양식
public static NativeWindow MainWindow()
{
Diagnostics.Process process = Diagnostics.Process.GetCurrentProcess();
if (null == process)
return null;
IntPtr handle = process.MainWindowHandle;
if (IntPtr.Zero == handle)
return null;
NativeWindow wnd = new NativeWindow();
wnd.AssignHandle(handle);
return wnd;
}
: 이것은하는 NativeWindow를 검색하는 C#의 SDK 코드
IWin32Window rh_wnd = Rhino.RhinoApp.MainWindow();
DocEditor.Show(rh_wnd);
이 작동 .... 대부분의 시간을. 그러나 그것은 또한 자주이 코드를 호출 처음 실패
HWND Error http://www.freeimagehosting.net/uploads/f29bc27823.png
다시 전화를 걸어 모든 것이 잘 작동합니다. 무슨 일 이니?!?
포인터 문제 .... –