Comments (1)
I implemented the following:
- Example:
bool net::r_eg::Conari::UnLib::API::getD_True(void)
- MSVC compiler C++ linkage:
?getD_True@API@UnLib@Conari@r_eg@net@@YA_NXZ
- MSVC compiler C++ linkage:
using(var l = new ConariL(...))
{
l.Aliases["getD_True"] = "?getD_True@API@UnLib@Conari@r_eg@net@@YA_NXZ";
l.Aliases["getFlag"] = l.Aliases["getD_True"]; // getFlag -> getD_True -> ...
// ...
l.DLR.getD_True<bool>();
l.DLR.getFlag<bool>();
l.Aliases["HelloWorld"] = new ProcAlias("?HelloWorld@API@UnLib@Conari@r_eg@net@@YAPBDXZ");
l.DLR.HelloWorld<CharPtr>(); // "Hello World !"
Even for simple linkage, it easy as:
l.Aliases["Flag"] = l.Aliases["getFlag"] = l.Aliases["xFunc"]; //Flag() -> getFlag() -> xFunc()->...
l.DLR.getFlag<bool>();
l.Aliases["a"] = l.Aliases["b"] = l.Aliases["c"] = l.Aliases["d"];
the PrefixL/R features will be considered later via IAliasCfg:
public interface IAliasCfg
{
//TODO: PrefixL/R, the rules of mangling, ...
}
upd.:
l.Aliases["gmn"] = new ProcAlias(
"GetMagicNum",
new AliasCfg() { NoPrefixR = true } // false by default
);
from conari.
Related Issues (20)
- logo HOT 1
- Speed
- File Not Found HOT 8
- Unmanaged EmitCalli and netstandard2.0 HOT 2
- The BreakPionts Not Work HOT 2
- LoadLibrary/Ex vs Conari. Same memory regions between processes and threads
- Support [Guide to add DllExport attribute to my project] HOT 4
- ExVar.getVar returning wrong value HOT 4
- Failed loading '...': Check used architecture or existence of file.[Error: 126] HOT 5
- The type or namespace name 'DotNet' does not exist HOT 3
- Work with Native C/C++ structures without declaration HOT 1
- Does it support for .net5 sdk? HOT 1
- How to properly use the "NativeStruct" from current Conari Version? HOT 19
- Undecorate functions from C++ compilers HOT 2
- Failed loading '...': Check used architecture or existence of file.[Error: 193]
- Support of .NET libraries
- Incorrect boolean values from unmanaged code HOT 1
- Support of exported variables / constants HOT 2
- IUnknown. COM Interface support
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from conari.