PInvoker 1.3.3 » Developer.Team

PInvoker 1.3.3

PInvoker 1.3.3
PInvoker 1.3.3 | 771 kB


The fastest way to produce C#/VB.NET pinvoke code definitions for any C++ header file and dll. PInvoker Visual Studio Addin imports C++ header files (even the windows SDK header files) together with their associated dlls and generates C#/VB.NET pinvoke definitions. These definitions can then be inserted into C# or VB.NET code. Users select from a list of available functions, structs, enums and delegates removing the need to manually find the method definitions in the header files or in the C++ library documentation.

Features include:

A choice of possible parameter types for C++ parameters with multiple pinvoke signatures (e.g. char* which can be a string, StringBuilder, byte[] or IntPtr).
Automatic insertion of using/imports statements into source code files for the namespaces used in the definition.
No need to find decorated symbol names for functions in dlls (by using depends.exe etc). PInvoker Visual Studio Addin automatically inserts the correct dll exported symbol name into the function declaration.
Ability to move forwards and backwards through selections and jump to types referenced in the current pinvoke declaration.
Compatible with VS2005, VS2008 and VS2010.

The fastest way to produce complete .NET pinvoke interface class assemblies for C++ dll libraries. PInvoker also imports C++ header files and dll files. But unlike PInvoker Visual Studio Addin it exports immediately usable .NET interop assemblies containing all methods, classes, structs, enums and delegates contained in the C++ header files and dlls. PInvoker is best employed as a batch importer when an interface for a large library needs to be generated.

Features include :

Generation of interface dlls for entire libraries in seconds. .NET Interface dlls are ready to use immediately.
Unique export of C++ typedefs as PInvoker interface classes. Code written using a class library produced by PInvoker strongly resembles the equivalent C++, making conversion from native example code much easier. (e.g. DWORD in the C++ file will be represented by a DWORD class in the interface.)
The fully compiled class library exported by PInvoker can be used from any .NET language.
PInvoker also contains a command line application suitable for running in post-build steps or continuous build environments.
Compatible with the Compact Framework 2.0 and above.

What is PInvoker ?

PInvoker .NET generates a pinvoke based .NET interop assembly (dll) by importing a number of C++ static dlls and a C++ header file (.h).

It imports the functions and variables exported by the native static dll, finds their definitions in the header file and from these exports pinvoke compatible types and functions in a .NET interop assembly (dll).

The generated pinvoke based interop assembly gives applications written in C#, VB.NET or any other .NET language access to the functions and variables in the native dlls.

What does the PInvoker Installation Contain ?

The PInvoker installation contains two applications.

PInvoker.exe is a console application for use in continuous build environments. It can also be run as part of a post-build step in Visual Studio projects to automatically generate a .NET interop assembly whilst building a solution.

PInvokerGui.exe is a windows forms application which provides a user interface for the console application. This allows configuration settings to be easily defined and a project file exported which can then be read by the console-application form of PInvoker.

What does PInvoker Support ?

The current version of PInvoker produces pinvoke based interop assemblies for

Dll Exported variables.
Dll Exported functions (stdcall and cdecl).
Arrays.
Strings.
Classes and Structures with public member variables only.
Bitfield structures.
Unions.
Enums.
Function pointers.
Typedefs.
Namespaces.
Nested types.
Constants (constant variables in namespace scope and #define constants).

Support for the following is to be included in future versions

Classes and structures with protected and private members.
__declspec(dllexport) classes
Instance methods.
Constructors and destructors.
Inheritance.
Interfaces.
COM types (BSTR etc).
Templates.
STL Headers.
Interface generation for x64 processors (64-bit).

Restriction: If you have TWO YEAR or MORE THAN TWO YEAR V.I.P membership please mail us for password.

Only for V.I.P
Warning! You are not allowed to view this text.