1C.Net:Enterprise - .Net framework in 1C:Enterprise 8.x/7.7

Only links to 1C:Enterprise configurations, platform, educational resources, extensions and processings
Elisy
Posts: 74
Joined: Fri Jan 23, 2009 3:15 am
Contact:

1C.Net:Enterprise - .Net framework in 1C:Enterprise 8.x/7.7

Postby Elisy » Thu Apr 02, 2009 11:41 am

Elisy .Net Bridge component adds .Net Framework support to 1C:Enterprise 7.7/8.0/8.1/8.2

Requires: .Net framework 3.5. You can download it from Microsoft web-site (http://www.microsoft.com/net/Download.aspx).

Main features of Elisy .Net Bridge are:
- does not require REGSVR32 and REGASM preregistration. Can be accessible by file name from 1C:Enterprise script;
- supports REGSVR32 and REGASM registration;
- supports .Net object creation by assembly file path;
- supports .Net object creation by assembly full name;
- contains ElisyNetBridge specialized .Net class containing extra functionality;

ElisyNetBridge class allows to:
- load assemblies by file path and by full name;
- create objects using constructors with up to 5 parameters;
- call methods with up to 5 parameters;
- call static methods with up to 5 parameters;
- get and set properties and fields;
- get and set static parameters;
- get and set indexers;

Elisy .Net Bridge does not support in the current version:
- Enums;
- Events subscriptions;

The attached archive contains evaluation copy of the add-in and How To topics describing the component integration and use of regular expressions in 1C:Enterprise.
You do not have the required permissions to view the files attached to this post.

Elisy
Posts: 74
Joined: Fri Jan 23, 2009 3:15 am
Contact:

Updated version of Elisy.NetBridge (v.1.0.0.2)

Postby Elisy » Tue May 05, 2009 4:26 am

The Elisy.NetBridge update includes some bug fixes. The following Elisy.NetBridge example uses LoadAddIn function to load component:

LoadAddIn("c:\.net\Elisy.NetBridge.dll");
AddIn = New("AddIn.ElisyNetBridge");
net = AddIn.New("Elisy.NetBridge, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", "Elisy.ElisyNetBridge");

//How to: Parse Strings Using Regular Expressions
words = 0;
pattern = "[a-zA-Z]*";
Message("Pattern : " + pattern);
regex = net.New1("System.Text.RegularExpressions.Regex", pattern);
line = "one.two three:four,five six seven";

match = net.Call1(regex, "Match", line);
While net.Get(match, "Success") Do
matchValue = net.Get(match, "Value");
if net.Get(matchValue, "Length") >0 Then
words = words + 1;
Message(matchValue);
EndIf;
match = net.Call(match, "NextMatch");
EndDo;

Message("Number of Words : " + words);
You do not have the required permissions to view the files attached to this post.

Elisy
Posts: 74
Joined: Fri Jan 23, 2009 3:15 am
Contact:

New 2.0 version of Elisy .Net Bridge

Postby Elisy » Wed May 13, 2009 8:17 am

New 2.0 version adds Enum type support and allows to access object properties and methods directly.
The following code from previous version:
m = net.Call1(reg, "Match", name[i]);
groups = net.Get(m, "Groups");
first = net.GetIndexed(groups, "Item", "first");

can be replaced by the following one:
m = reg.Match(name[i]);
first = m.Groups.get_Item("first").Value;

New version of the component you can download from the attachment.

Free to developers and non-commercial use.

See also: How To topics
You do not have the required permissions to view the files attached to this post.

Elisy
Posts: 74
Joined: Fri Jan 23, 2009 3:15 am
Contact:

Elisy .Net Bridge v.2.1

Postby Elisy » Sat May 30, 2009 4:24 am

This post contains updated version of Elisy .Net Bridge v.2.1
Component activation system was implemented to support MAC-addresses. There is a new plug-in method:
bool Activate(serialNumber, MACAddress, activationKey)
Returns true if component was registered successfully. So you can call it continuously using WHILE loop for multiple MACAddress and activationKey pairs.
Activation prevents greeting message at component start-up.
You do not have the required permissions to view the files attached to this post.

Elisy
Posts: 74
Joined: Fri Jan 23, 2009 3:15 am
Contact:

Elisy .Net Bridge v.2.2 has been released

Postby Elisy » Tue Jul 14, 2009 11:54 am

Elisy .Net Bridge v.2.2 has been released and contains two implemented features:

Elisy .Net Bridge supports IntPtr type.
For example the following code is correct now:
wih = net.New("System.Windows.Interop.WindowInteropHelper", window);
wih.Owner = net.CallStatic("System.Diagnostics.Process", "GetCurrentProcess").MainWindowHandle;

Advanced type creation:
Now Elisy .Net Bridge supports advanced types like nested types. For example string "System.Environment+SpecialFolder" is available in New method. Please see Type::GetType Method in MSDN for more information.
You do not have the required permissions to view the files attached to this post.

Elisy
Posts: 74
Joined: Fri Jan 23, 2009 3:15 am
Contact:

Elisy .Net Bridge v.2.3

Postby Elisy » Tue Sep 15, 2009 10:51 am

The last component update includes significant performance optimization (up to 2 times).
The unstable behaviour problem has been resolved. This problem occurs sometimes while component v.2.2 and garbage collection run simultaneously.
You do not have the required permissions to view the files attached to this post.

Elisy
Posts: 74
Joined: Fri Jan 23, 2009 3:15 am
Contact:

Elisy .Net Bridge v.3.0 alpha 1

Postby Elisy » Mon Nov 02, 2009 11:11 am

New 3.0 alpha version of Elisy .Net Bridge has been released. You can download it from this post.
It contains the following 2 key features:
1) Adds multi threading possibility to 1C:Enterprise
2) Allows developers to implement callback from .net (event handling etc.)
You do not have the required permissions to view the files attached to this post.

Elisy
Posts: 74
Joined: Fri Jan 23, 2009 3:15 am
Contact:

Elisy .Net Bridge v.3.0 alpha 2 has been released

Postby Elisy » Tue Nov 24, 2009 10:29 am

Changes in Elisy .Net Bridge 3.0 alpha 2 since 3.0 alpha:
System.IntPtr type is supported;
MessageBox is shown if component is in trial mode;
1C:Enterprise v.7.7 support;
Version property has been implemented. It shows current .Net Bridge version. You can get it using “net.Version” clause;
New “Elisy.NetBridge.Environment” class has been implemented. It contains properties and methods to access 1C engine;
.Net System.Boolean type is supported in 1C 7.7. You can use the following clause: b = “{True}”; or b = “{False}”; Please note these expressions do not work in 1C 8.x supporting native Boolean type;
Environment MainWindowHandler and MDIWindowHandler properties have been implemented. They return Hwnds to appropriate 1C windows. MDIWindowHandler returns Null in 1C 8.2 Managed client mode;
Environment.Version returns calling 1C:Enterprise version
Version increment to 3.0.0.1;
You do not have the required permissions to view the files attached to this post.

Elisy
Posts: 74
Joined: Fri Jan 23, 2009 3:15 am
Contact:

Preliminary documentation

Postby Elisy » Sat Dec 05, 2009 9:01 am

Here you can download off-line preliminary Elisy .Net Bridge 3.0 chm-documentation to check parameters and return values.
It describes 2 types with their members:
Elisy.ElisyNetBridge
CallStatic Invokes the appropriate static method.
GetStatic Invokes the accessor method in the static property to retrieve the value of the property.
LoadAssembly Loads an assembly given the long form of its name.
LoadAssemblyFrom Loads an assembly given its path.
New Used to create objects and invoke constructors.
SetStatic Invokes the accessor method in the static property to assign the value of the property.

Elisy.NetBridge.Environment
MainWindowHandle Gets the window handle of the main window of the 1C:Enterprise.
MDIFrameHandle Gets the window handle of the MDI frame window of the 1C:Enterprise.
Version Gets a Version object that describes the major, minor, build, and revision numbers of the 1C:Enterprise.
You do not have the required permissions to view the files attached to this post.

Elisy
Posts: 74
Joined: Fri Jan 23, 2009 3:15 am
Contact:

Elisy .Net Bridge v3.0 beta has been released

Postby Elisy » Sat Jan 16, 2010 8:22 am

Elisy .Net Bridge v3.0 beta has been released
Breaking changes since 3.0 alpha 2:
1C:Enterprise object implicit conversion to IExpando has been removed to support the future .Net framework 4 "dynamic" type. Please use Convert.ToIExpando method instead.

You can use the following construction to convert 1C:Enterprise object to IExpando:
csharp.ThisForm = net.CallStatic("Elisy.NetBridge.Convert", "ToIExpando", ThisForm);
To retrieve the 1C:Enterprise object you can use:
o = csharp.ThisForm.GetUnderlyingObject();
You do not have the required permissions to view the files attached to this post.


Return to “Links to Download”

Who is online

Users browsing this forum: No registered users and 2 guests