2012-05-08 7 views
1

「良い」例と「特定」の文書(Unix上)についてNPAPIに苦労しています。NPAPI(Xlib上)のSWFファイルを表示

nm -D libflashplayer.so | more 

00000000005cc4e0 T FlashPlayer_11_2_202_235_FlashPlayer 
00000000005cc4a0 T Flash_DisableLocalSecurity 
00000000005cc4c0 T Flash_EnforceLocalSecurity 
00000000005ca870 T NP_GetMIMEDescription 
00000000005ca850 T NP_GetValue 
00000000005ca4d0 T NP_Initialize 
00000000005ca4c0 T NP_Shutdown 

は、私は簡単にこれを行うことにより、MIMEDescriptionチェック:私はある特定の情報にアクセスすることができた上で、私のlibflashplayer.soを、持っています。フラッシュMIMEを返します。

static char* (*mNP_GetMIMEDescription)(void); 
//MAIN 
lib = dlopen("./libflashplayer.so", RTLD_LAZY | RTLD_LOCAL); 

*(void **) &mNP_GetMIMEDescription = dlsym(lib, "NP_GetMIMEDescription"); 
fprintf(stderr, "NP_GetMIMEDescription=%p\n", mNP_GetMIMEDescription); 
fprintf(stderr, "NP_GetMIMEDescription=%s\n", mNP_GetMIMEDescription()); 

//output 
NP_GetMIMEDescription=0x7f2d2239f870 
NP_GetMIMEDescription=application/x-shockwave-flash:swf:Shockwave Flash;application/futuresplash:spl:FutureSplash Player 

は今、私は本当にXlibウィンドウ上のコンテンツをレンダリング(またはテスト、swfファイルを開く)する方法について迷ってしまいました。 まず、NP_INITIALIZE(私が理解しているところから)がグローバル初期化を提供すると信じています(特にNPNetscapeFuncsNPPluginFuncs "インスタンス"の場合)。 (NPP_Newを使って)プラグインのインスタンスを作成した後、ウィンドウを(NPP_SetWindowで)設定してプラグインのインスタンスをリンクすることでした。と私の窓(例えばXlibから)

答えて

関連する問題