Difference between revisions of "IS:.NET"
Line 31: | Line 31: | ||
* [[NET:Lavish.LavishNav.dll|Lavish.LavishNav.dll]] | * [[NET:Lavish.LavishNav.dll|Lavish.LavishNav.dll]] | ||
** [[NET:Lavish.LavishNav.dll#LavishNavAPI_namespace|LavishNavAPI]] | ** [[NET:Lavish.LavishNav.dll#LavishNavAPI_namespace|LavishNavAPI]] | ||
− | *** [[NET:Lavish.LavishNav.dll# | + | *** [[NET:Lavish.LavishNav.dll#Pathfinders_namespace|Pathfinders]] |
− | *** [[NET:Lavish.LavishNav.dll# | + | *** [[NET:Lavish.LavishNav.dll#Regions_namespace|Regions]] |
=== Tutorials === | === Tutorials === |
Revision as of 04:46, 17 December 2006
Contents
Overview
As of version 1.08 (released Nov 28, 2006), Inner Space supports loading .NET 2.0 assemblies in-process.
Executing an assembly
The DotNet command is used to launch assemblies, as well as list active application domains, and close them.
Application Domains
An application domain represents the logical separation of .NET "processes". Any number of assemblies can be loaded into a single application domain, and likewise into any number of additional application domains. Application domains are referenced by name, and there is no restriction on naming schemes. When loading an assembly, use an application domain name of your choice. If you want to load the application into the same domain as another, simply reuse the name. When the domain is unloaded, all assemblies in that domain are subsequently unloaded.
Assembly requirements
.NET assemblies must be signed and placed in the Global Assembly Cache to have permission to load. .NET assemblies do not have to be specially compiled for usage in Inner Space, unless the assembly needs to use Inner Space API.
Developing for Inner Space in .NET
Concepts
API Tree
- Only namespaces and static classes are listed below
Tutorials
- Creating a simple Hello World app and placing it in the GAC
- Adding a LavishScript Command
- Attaching to LavishScript events
- Wrapping LavishScript objects in .NET
Samples
C#
- Under construction...
C++
- Under construction...
Visual Basic
- Under construction...
Exposing API to .NET
- Standard methods (documentation for standard methods can be found elsewhere, try google)
- DLL import (P/Invoke)
- COM interop
- C++ interop
- Inner Space bootstrap
Known Issues
- System.Console.Write and friends do not yet filter through InnerSpace.Echo