I want to develop the npapi plugin which should work on both firefox
and mac browsers. I just want to know where I should start. I never
worked in this area.
Could anyone please help me out which development tools are required
to make the npapi plugin?
Thanks,
sanjay
Thanx Mugdha,
>From the above link I found that I gotta use Gecko SDK and firefox
browser 2.0. But could you plz tell me which IDE I gotta use to
compile the npapi plugin? Is there any IDE available?
And if I want to develop the same npapi plugin for mac browser then I
gotta write different plugin for mac and also have to use different
Gecko SDK for mac?
Would be great if I get answers for all these questions.
Thanx once again,
sanjay
You can use any C/C++ IDE you want...
> And if I want to develop the same npapi plugin for mac browser then I
> gotta write different plugin for mac and also have to use different
> Gecko SDK for mac?
Yeah, Mac will at least need different drawing code in your plugin.
Since you don't have to link to any libraries to write NPAPI plugins,
you don't necessarily have to use a different Gecko SDK I think.
Hi Christian,
Thanx for sharing the information about npapi plugin development.
So according to you, I gotta use Gecko SDK and for IDE I can use the
visual studio 2005 as well. Is there any issue using Visual Studio
2005 as IDE? if there is any then plz let me know.
About Mac development, still I am not conviced that I don't have to
use the different Gecko SDK. Because I have seen the different Gecko
SDK for mac os on the http://developer.mozilla.org/en/docs/Gecko_SDK
download plugin page.Please correct me if I am wrong about mac.
Thanks,
sanjay
Visual Studio should work fine. With 2005, you may have to link the CRT
statically.
> About Mac development, still I am not conviced that I don't have to
> use the different Gecko SDK. Because I have seen the different Gecko
> SDK for mac os on the http://developer.mozilla.org/en/docs/Gecko_SDK
> download plugin page.Please correct me if I am wrong about mac.
If you were writing an XPCOM component, you would have to use the Mac
SDK, because you need different libraries. If you are writing a plugin,
you only need headers, so any SDK should work.
Thanks once again christian,
Now I got the Gecko SDK, but I am confused about how to install the
SDK on windows. I got no clue about the installation and also not
getting any info about installing the SDK. could you plz help me out
to install the Gecko SDK on windows?
sanjay
Just unzip it? I'm not sure what you would want to do other than that.
Hey Christian,
I got your point. I thought it would be a normal installation process
as we follow for any SDK. Anyways now I also checked out the plugin
src codes from cvs. I am trying to build the smaple code located in
\mozilla\modules\plugin\tools\sdk\samples\basic\windows in VS 2005.
But getting hell of errors.
Here it is:
====================================================================================
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(3857) : error C2146: syntax error : missing ';' before
identifier 'ContextRecord'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(3857) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(3857) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8319) : error C2065: 'PCONTEXT' : undeclared identifier
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2146: syntax error : missing ')' before
identifier 'ContextRecord'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : warning C4229: anachronism used : modifiers on data
are ignored
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2182: 'RtlCaptureContext' : illegal use of
type 'void'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2491: 'RtlCaptureContext' : definition of
dllimport data not allowed
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2059: syntax error : ')'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(9594) : error C3861: '__readfsdword': identifier not found
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C2146: syntax error : missing ';' before
identifier 'LPCONTEXT'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C2378: 'PCONTEXT' : redefinition; symbol
cannot be overloaded with a typedef
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(3155) : error C2061: syntax error : identifier 'LPCONTEXT'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(3163) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(3163) : error C2143: syntax error : missing ',' before '*'
npn_gate.cpp
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(3857) : error C2146: syntax error : missing ';' before
identifier 'ContextRecord'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(3857) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(3857) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8319) : error C2065: 'PCONTEXT' : undeclared identifier
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2146: syntax error : missing ')' before
identifier 'ContextRecord'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : warning C4229: anachronism used : modifiers on data
are ignored
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2182: 'RtlCaptureContext' : illegal use of
type 'void'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2491: 'RtlCaptureContext' : definition of
dllimport data not allowed
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2059: syntax error : ')'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(9594) : error C3861: '__readfsdword': identifier not found
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C2146: syntax error : missing ';' before
identifier 'LPCONTEXT'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C2378: 'PCONTEXT' : redefinition; symbol
cannot be overloaded with a typedef
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(3155) : error C2061: syntax error : identifier 'LPCONTEXT'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(3163) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(3163) : error C2143: syntax error : missing ',' before '*'
np_entry.cpp
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(3857) : error C2146: syntax error : missing ';' before
identifier 'ContextRecord'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(3857) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(3857) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8319) : error C2065: 'PCONTEXT' : undeclared identifier
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2146: syntax error : missing ')' before
identifier 'ContextRecord'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : warning C4229: anachronism used : modifiers on data
are ignored
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2182: 'RtlCaptureContext' : illegal use of
type 'void'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2491: 'RtlCaptureContext' : definition of
dllimport data not allowed
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(8320) : error C2059: syntax error : ')'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winnt.h(9594) : error C3861: '__readfsdword': identifier not found
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C2146: syntax error : missing ';' before
identifier 'LPCONTEXT'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C2378: 'PCONTEXT' : redefinition; symbol
cannot be overloaded with a typedef
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(779) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(3155) : error C2061: syntax error : identifier 'LPCONTEXT'
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(3163) : error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
c:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include
\winbase.h(3163) : error C2143: syntax error : missing ',' before '*'
=====================================================================================
and its all in SDK header files. you have any idea what I am missing
here.