c++得api是
HRESULT DSStream_GetOwnerWnd(int iCardID, HWND* phParentWnd)得到当前视频显示窗口的父窗口的句柄。phPraentWnd:返回父窗口的句柄。我知道要用jni啊!但是我不知道怎么把java得swing或者awt窗体传进去
分不够以后再补啊
只要能成功给500分阿

解决方案 »

  1.   

    c++要获得swing窗口的句柄似乎不大可能,因为java里面根本就没有句柄的概念.
    jni主要是java调用本地程序,当然c++里面是可以调用java方法的.
    我看了一下jni中的jobject的定义,其实就是一个空的c++类的一个指针.
      

  2.   

    //传窗体
    public native static void getView(JFrame _jframe); 
    我在java里面这么写 
      
    javah xxxx
    生成的头文件是
    JNIEXPORT void JNICALL Java_ConnDll_getView
       (JNIEnv *, jclass, jobject);
       
    我在.cpp里面怎么调用头文件的方法阿
    JNIEXPORT void JNICALL Java_ConnDll_getView
    (JNIEnv *, jclass, jobject)
         {
          //调用这个方法应该怎么写啊
          DSStream_SetOwnerWnd( iCardID, jobject);
         }  
         
         
    api是
    (1)、HRESULT DSStream_SetOwnerWnd(int iCardID, HWND hParentWnd)
    设置视频显示窗口的父窗口,视频图像将在这个窗口中显示。
    hParentWnd:
    父窗口的句柄。
      

  3.   

    无论如何只要java跑在虚拟机上,虚拟机又跑在win操作系统上!我认为肯定可以得到c++得dll需要的窗体参数阿!