Jump to content

CrystalNet

Members
  • Content Count

    12
  • Joined

  • Last visited

Community Reputation

4 Neutral
  1. CrystalNet

    CrystalNet - .Net Runtime Library for Delphi

    Hello, I am a member of the support team at CrystalNet Technologies LTD. Let me address the issues and questions raised in this forum. First and foremost, the .Net Runtime Library for Delphi is our flagship product and the most comprehensive library for bridging Delphi and .Net which is used by over 1000 companies and individuals worldwide. The product eliminates much of the complexity of developing Delphi applications with .Net libraries or components, by providing easy-to-use programmable components that facilitate tasks such as hosting .Net CLR in Delphi, access .Net Framework libraries, Load .Net 3rd party DLLs, and many more. The .Net Runtime Library for Delphi contains .Net DLL/WSDL Import Utility for Delphi which helps eliminates the need to manually convert your .Net 3rd-party libraries to Delphi. Competitive Advantages Full access to .Net Framework Class Library (Including new and emerging .NET technologies). No extra dll is required when deployed. No COM registration of .Net Libraries is required when deployed. There are tools to generate your .Net Libraries into Delphi pas files. Allows Delphi to consume .Net libraries as if they were native code. Easy to use. We are currently working on new a product .Net Core Library for Delphi which will fully support .Net Core. At the moment the .Net Runtime Library for Delphi supports only .Net Standard 2.1. For source code examples, go to https://www.crystalnet-tech.com/RuntimeLibrary/ViewRTLExamples https://www.crystalnet-tech.com/DevCodeSamples/Default I understand the confusion surrounding the licenses. The Professional license is interchanged with the Enterprise license. This discrepancy happened way back in 2015 and there are so many clients using the Pro and Enterprise license such that changing it will cause massive problems for them. We know about the issues and we are working on ways to resolve this to ensure smooth transition between Pro and Enterprise licenses for all our clients. If you have further questions, you can send them to us using the link below: https://www.crystalnet-tech.com/contactform.aspx
  2. CrystalNet

    .Net DLL/WSDL Import Utility for Delphi

    Yes that is what I did. If you read my previous message, i imported the wsdl text in the link by copying then wsdl text and saved it to a file with extension .wsdl. You will get the above error message when you import using the utility. You will encounter the same issue if you import the saved wsdl file from Visual Studio. Can you import your wsdl file from Visual Studio using the "Add Service Reference..." menu option.? Let me know of the outcome.
  3. CrystalNet

    .Net DLL/WSDL Import Utility for Delphi

    I am getting different error when i import the wsdl text in the link above. This error is valid. I am having the same issue when i import via Visual studio.
  4. CrystalNet

    .Net DLL/WSDL Import Utility for Delphi

    I am not sure why it is behaving this way, however to help our development team debug and identify the cause of the problem and provide a resolution, can to send us a copy of the .wsdl file you want to import as an attachment via this page or via our contact link below: https://www.crystalnet-tech.com/ContactForm.aspx
  5. CrystalNet

    .Net VCL for Delphi

    We are currently working on new UI controls (WPF, UWP etc) and components which will be included in the future release of the .Net VCL for Delphi. .Net VCL for Delphi does not wrap exact same win32 controls that the corresponding VCL wraps. These components and controls can do more and provide more functionalities. Let consider background color or foreground color of a control, you can set different types of colors including hex color codes on these controls whereas the standard VCL doesn't allow you to do that easily. For more information about these controls and components, to go https://www.crystalnet-tech.com/DotNetVCL/DotNetVCL4Delphi#ControlList
  6. CrystalNet

    .Net DLL/WSDL Import Utility for Delphi

    Sorry for the misunderstanding, can you go to the "C:\Temp" folder and move all the .xsd file extensions to a different folder and try again. I will raise this with our software engineering team to resolve this issue in the coming release but in the meantime remove the .xsd files in the same folder location as the .wsdl file to import.
  7. CrystalNet

    .Net DLL/WSDL Import Utility for Delphi

    The file you are trying to import is not a wsdl file, hence the error message. You need to specify the wsdl file with extension .wsdl or DISCOMAP file with extension .discomap together with the .xsd files if any exist. You should not import the .xsd file alone.
  8. CrystalNet

    .Net VCL for Delphi

    Includes over 50 essential .Net UI controls and components which are available in Delphi such as Active Directory components, Internet components, printing components, Xml components, Dialog components, UI controls, Grid controls, and many more for building powerful line-of-business Windows applications in Delphi. The .Net VCL for Delphi is built upon a common .Net Runtime Library framework, thus minimizing the learning curve needed to get started with them as a whole. The common framework also ensures consistent features, performance, polished API and other benefits. It offers the most comprehensive set of components and UI controls for building enterprise-grade applications that target the desktop. All the included UI Controls and Components libraries are technically superior, with proven track record of widespread use for rock-solid reliability. The UI Controls and Components are thoroughly and expertly documented and include a variety of sample applications. They are written to be efficient and do not depend on external DLLs. All libraries are feature-rich yet easy to use due to emphasis on intuitive API design. Built on solid .Net Framework and advanced .Net functionalities, .Net VCL for Delphi provides innovative and advanced quality UI controls and components for Delphi that let you build powerful business desktop application effortless in timely fashion and continues to deliver innovative features and leverage many cutting-edge desktop technologies. Empowered by the vision to deliver best desktop experience, the .Net VCL delivers best-of-breed features and innovations using the .Net technologies which has never been offered before. It makes .Net VCL for Delphi the most productive tools for Delphi and application development. Tightly integrated with Embarcadero Delphi, you can use all features available in the Embarcadero Delphi IDE for your development tools and start working with UI instantly. The .Net VCL for Delphi consists of: .Net Component Suite for Delphi .Net Control Suite for Delphi .Net Component Suite for Delphi Flexible and lightweight libraries of reusable codes which enables object sharing between projects or applications. Built on mature framework and advanced functionality, the .Net Component Suite for Delphi continues to deliver innovative features and leverage many cutting-edge desktop technologies. Contains top-performing .Net Components in Delphi for every aspect of Delphi desktop development. .Net Control Suite for Delphi The .Net Control Suite for Delphi are reusable .Net components that encapsulate user interface (UI) functionality and are used in client side Windows applications. As you design and modify the user interface of your VCL forms applications, you can add, align, and position and manipulate these .Net controls in Delphi designer using it own sets of properties, methods, and events and write code to add controls dynamically at run time. Built on mature frameworks and advanced functionality, the .Net Control Suite for Delphi continues to deliver innovative features and leverage many cutting-edge desktop technologies. The control library allows developers to create professional applications that incorporate a full set of .Net User Interface (UI) controls. Contains top-performing .Net UI controls in Delphi for every aspect of Delphi desktop development. Key features Extensive Feature Set The library contains more than 50 .Net UI Controls and Components available in Delphi, covering most business use cases. Be it Rich UI, Active Directory Management, Networking and Internet Management, Data Management, System Management etc, you got it all. Build intuitive, full-featured business applications with the most versatile set of .Net UI controls and components. Next-Level App Development Get a fast and productive application development through intuitive and extensible APIs, enabling reliable, well-structured and easily maintainable apps. Empowered by the vision to deliver best desktop experience in the industry, the library delivers best-of-breed features and innovations which has never been offered before. Performance Performance is critical for delivering a good user experience. We ensure that all our components have been designed and built to achieve the best performance possible. The libraries are built on a common .Net framework which ensures consistent features, performance, polished API and other benefits. Stay current With our commitment to at least four major updates per year, you receive the most up-to-date functionality and new components in addition to monthly service packs and bug fixes. Custom patches are available as needed. Seamless integration with Delphi Tightly integrated with Embarcadero Delphi, you can use all features available in the Embarcadero Delphi IDE for your development tools and start working with UI instantly. A Complete integration with Delphi IDE includes tool Palette integration and an enhanced designer experience. Easy-to-use, extensive API Extend your desktop controls and reduce your learning curve with our deep, easy-to-read API. Libraries are feature-rich and incredibly powerful yet easy to use due to emphasis on intuitive API design. Flexibility Reduce developer overhead with extensive built-in feature sets. Library Components are flexible and lightweight, and they can be nested, reused, and shared between applications. Common Famework Libraries are built on a common .Net Runtime Framework, thus minimizing the learning curve needed to get started with them as a whole. The framework has advanced functionalities which helps the library deliver innovative features and leverage many cutting-edge desktop technologies. Example: Using the WebClient component. The following code example takes the URI of a resource, retrieves it, and displays the response. program WebClientExample; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils, CNClrLib.Core, CNClrLib.Component.WebClient; var client: TCnWebClient; data: _Stream; reader: _StreamReader; s: String; begin try if ParamCount = 0 then raise Exception.Create('Specify the URI of the resource to retrieve.'); client := TCnWebClient.Create(nil); try // Add a user agent header in case the // requested URI contains a query. client.Headers.Add('user-agent=Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)'); data := client.OpenRead(ParamStr(0)); reader := CoStreamReader.CreateInstance(data); s := reader.ReadToEnd; Writeln(s); data.Close; reader.Close; finally client.Free; end; except on E: Exception do Writeln('The following exception was raised : ', E.Message); end; end. The TCnWebClient component provides common methods for sending data to or receiving data from any local, intranet, or Internet resource identified by a URI. The TCnWebClient component uses the WebRequest class to provide access to resources. TCnWebClient instances can access data with any WebRequest descendant registered with the WebRequest.RegisterPrefix method. For more information go to https://crystalnet-tech.com/DotNetVCL/DotNetVCL4Delphi.
  9. CrystalNet

    ADO.Net DAC for Delphi

    ADO.Net DAC for Delphi is the fastest and most reliable database connectivity solutions for any database using ADO.Net technology in Delphi. It provides data access to data sources such as SQL Server, Oracle, SQLite, VistaDB and to data sources exposed through OLE DB and ODBC using ADO.Net data provider framework. ADO.Net DAC for Delphi is an enterprise solution with highest performance and unlimited possibilities. Data-sharing consumer applications can use ADO.NET DAC for Delphi to connect to these data sources and retrieve, handle, and update the data that they contain. With its powerful common architecture base on ADO.Net technology, ADO.Net DAC for Delphi enables high-speed direct data access from Delphi to SQL Server, Oracle, SQLite, VistaDB and other data sources exposed through OLE DB and ODBC. ADO.Net DAC for Delphi provides a library of components for connecting to a database, executing commands, and retrieving results. Those results are either processed directly, placed in a Virtual Table components. The Virtual Table component can also be used independently of any active connection to manage data local to the application or sourced from XML. You have the choice of either using client-side or server-side cursors. The ADO.Net DAC for Delphi actually handle the work of cursors. The developer has the freedom of choice in development, for creating efficient applications. The ADO.Net DAC for Delphi consists of the following Data Access library components: SqlClient Data Access Components OracleClient Data Access Components SQLite Data Access Components ODBC Data Access Components OLE DB Data Access Components VistaDB Data Access Components Virtual Table Components Note: Direct Data Access components for the following data sources will be available in future: MySQL, Firebird, BD2, Informix etc. However, you can still connect to these data sources using ODBC Data Access Components or OLE DB Data Access Components provided ODBC drivers or OLE DB providers are installed on the client machine. SqlClient Data Access Components SqlClient Data Access Components (SqlClientDAC) is a feature-rich and high-performance library of components that provides native connectivity to SQL Server from Delphi for both 32-bit and 64-bit Windows platforms. SqlClientDAC-based applications connect to SQL Server directly through the ADO.Net SqlClient, which is a .NET Framework Data Provider for SQL Server. SqlClientDAC aims to assist programmers in developing of fast and native SQL Server database applications. SqlClientDAC uses its own protocol to communicate with SQL Server and it is lightweight and performs well because it is optimized to access a SQL Server directly without adding an OLE DB or Open Database Connectivity (ODBC) layer. For more information go to https://crystalnet-tech.com/ADONetVcl/SqlClientDAC. OrcaleClient Data Access Components OracleClient Data Access Components (OracleClientDAC) is a feature-rich and high-performance library of components that provides native connectivity to Oracle from Delphi for both 32-bit and 64-bit Windows platforms. OracleClientDAC-based applications connect to Oracle directly through the ADO.Net OracleClient, which is an Oracle Data Provider for .NET (ODP.Net). OracleClientDAC aims to assist programmers in developing of fast and native Oracle database applications. OracleClientDAC allows developers to take advantage of advanced Oracle database functionality, including Real Application Clusters, self-tuning statement cache, and fast connection failover. For more information go to https://crystalnet-tech.com/ADONetVcl/OracleClientDAC. SQLite Data Access Components SQLite Data Access Components (SQLiteDAC) is a feature-rich and high-performance library of components that provides native connectivity to SQLite from Delphi for both 32-bit and 64-bit Windows platforms. SQLiteDAC-based DB applications are easy to deploy, do not require installation of other data provider layers (such as BDE or ODBC), and that's why they can work faster than the ones based on standard Delphi data connectivity solutions. SQLiteDAC-based applications connect to SQLite directly through the SQLite.Net, which is an ADO.NET provider for SQLite. For more information go to https://crystalnet-tech.com/ADONetVcl/SQLiteDAC.aspx. ODBC Data Access Components ODBC Data Access Components (ODBCDAC) is a feature-rich and high-performance library of components that provides data access for data sources exposed through ODBC from Delphi for both 32-bit and 64-bit Windows platforms. ODBCDAC-based applications connects to any data source exposed through ODBC using the .NET Framework Data Provider for ODBC. ODBCDAC aims to assist programmers in developing of fast and native database applications. ODBCDAC uses the native ODBC Driver Manager (DM) to enable data access. ODBCDAC requires the x86 or x64 ODBC driver to be installed according to ODBC specification. Please see the following ODBC documentation: The portional list of ODBC drivers The ODBC programming guide For more information go to https://crystalnet-tech.com/ADONetVcl/ODBCDAC.aspx. OLEDB Data Access Components OLE DB Data Access Components (OLEDBDAC) is a feature-rich and high-performance library of components that provides data access for data sources exposed through OLE DB from Delphi for both 32-bit and 64-bit Windows platforms. OLEDBDAC aims to assist programmers in developing of fast and native database applications. OLEDBDAC uses native OLE DB through COM interop to enable data access. OLEDBDAC does not support OLE DB version 2.5 interfaces. OLE DB Providers that require support for OLE DB 2.5 interfaces will not function correctly with the OLE DB Data Access Components. This includes the Microsoft OLE DB provider for Exchange and the Microsoft OLE DB provider for Internet Publishing. OLEDBDAC does not work with the OLE DB provider for ODBC (MSDASQL). To access an ODBC data source, use the ODBC Data Access Components. For more information go to https://crystalnet-tech.com/ADONetVcl/OLEDBDAC.aspx. Virtual Table Components Virtual Table Components is a feature-rich and high-performance library of components that provides an in-memory cache of data retrieved from a data source. It offers a disconnected data source architecture which means there is no need of active connections during work with this component. It can be used to hold multiple tables with data. You can select data form tables, create views based on table. The component also provides you with rich features like saving data as XML and loading XML data. For more information go to https://crystalnet-tech.com/ADONetVcl/VirtualTables.aspx. Main Features Direct Mode Allows your application to work with SQL Server, Oracle, SQLite, VistaDB and other data sources through ODBC or OLE DB providers directly without involving a DB Client library, thus significantly facilitating deployment and configuration of your applications. Performance All our components and libraries are designed to help you write high-performance, lightweight data access layers, therefore they use ado.net data access technologies and techniques of optimization. Handling Cursors When a SQL command is executed and it has to return rows, the DBMS creates a cursor on the DBMS server. An application uses the cursor to retrieve rows from a database. There are serveral cursor kinds to choose from using the FetchOptions.CursorKind property. Rowset Fetching Rowset Fetching allows you to specify the number of records that will be fetched from the server in one network round trip. You can optimize this separately for each SELECT statement that you execute, thereby minimizing the number of network round trips by specifying the RowsetSize option. The rowset size is controlled by the FetchOptions.RowsetSize property and the rowsets are fetched according to the FetchOptions.Mode property. DataReader Provider DataReader is used to read the data from database and it is a read and forward only connection oriented architecture when fetching data from database. DataReader will fetch the data very fast when compared to other TCustomClrDataSet descendants. DataAdapter Provider DataAdapter acts as a Bridge between TCustomClrDataSet descendants and database. This dataadapter object is used to read the data from database and bind that data to TCustomClrDataSet descendants. It is a disconnected oriented architecture. IDE Compatibility Our product is compatible with the latest IDE versions: Embarcadero RAD Studio 10.3 Rio. It is also compatible with the previous IDE versions since CodeGear Delphi 2009. DB Compatibility Our product supports the latest versions of the popular database servers like Oracle, SQL Server, SQLite, VistaDB and other data sources (using ODBC and OLE DB providers) such as MySQL, InterBase, Firebird, PostgreSQL etc. Example - using SqlCient Data Access Components The code in this example assumes that you can connect to the Northwind sample database on Microsoft SQL Server. The code creates a TSqlClientDataReader to select rows from the Products table, adding a parameter to restrict the results to rows with a UnitPrice greater than the specified parameter value, in this case 5. The code executes the command using the TSqlClientDataReader, and displays the results in the console window. program SqlClientExample; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils, CNClrLib.ADONet.SqlClient; var queryString: string; paramValue: Integer; connection: TSqlClientConnection; reader: TSqlClientDataReader; begin try // Provide the query string with a parameter placeholder. queryString := 'SELECT ProductID, UnitPrice, ProductName from dbo.products ' + 'WHERE UnitPrice > :pricePoint ' + 'ORDER BY UnitPrice DESC'; // Specify the parameter value. paramValue := 5; // Create and open the connection. connection := TSqlClientConnection.Create(nil); try // Setup connectionstring with connection.Params do begin DataSource := '(local)'; InitialCatalog := 'Northwind'; IntegratedSecurity := True; end; // OR you can set sql connectionstring to the connectionstring property of TSqlClientConnection connection.ConnectionString := 'Data Source=(local);Initial Catalog=Northwind;Integrated Security=true'; // Open connection connection.Open; // Create the DataReader command. reader := TSqlClientDataReader.Create(nil); try reader.Connection := connection; reader.CommandText.Text := queryString; reader.ParamByName('pricePoint').AsInteger := paramValue; reader.Open; while reader.Read do begin Writeln(Format(chr(9) + '%s' + chr(9) + '%s' + chr(9) + '%s', [reader.GetString(0), reader.GetString(1), reader.GetString(2)])); end; reader.Close; finally reader.Free; end; finally connection.Free; end; except on E: Exception do Writeln(E.ClassName, ': ', E.Message); end; ReadLn; end. For more information about these components, go to https://crystalnet-tech.com/ADONetVcl/ADODotNet
  10. The .Net Runtime Library for Delphi is the best library to work with .Net framework and .Net libraries from Delphi. It is designed to provide a way to interact with applications written in anyone of the .Net languages (such as C#, Visual Basic.Net, Delphi.Net, JScript.Net, etc) from Delphi. The .Net Runtime Library for Delphi allows Delphi to use .Net libraries without the need for registry entries, COM registrations, or changes to the .NET libraries. Applications built with the .Net Runtime Library for Delphi will not require any dll files when deployed. .Net Runtime Library for Delphi allows developers to create applications that can mix managed (.NET) and unmanaged ("native" Delphi) code in the same project. Competitive Advantages: No extra dll is required when deployed. No COM registration of .Net Libraries is required when deployed. There are tools to generate your .Net Libraries into Delphi pas files. Allows Delphi to consume .Net libraries as if they were native code. Full access to .Net Framework Class Library. Easy to use. CNClrLibrary can do so much: Access .Net Framework Class Library. Access Third Party .Net Libraries. Access Your .Net Libraries. etc. Features:- Can access .Net Framework Class Library (such as Collections, Data Configuration, DataSets, Data Access, Database Connectivity, Diagnostics, IO, Linq, Dynamic Linq, System, Device and Application Management, Networking, Reflections, Security, Encryption, Cryptography, Character Encoding and String Manipulation, XML etc). Can access Third Party .Net Libraries. Can access your .Net Libraries. Can host the .Net Common Language Runtime (CLR) in Delphi. Can load and access assemblies and their types from third party .Net libraries or your own .Net libraries or executable files. Can load and access assemblies and their types from Global Assembly Cache (GAC). Can invoke members of the loaded assembly types which includes constructor, fields, properties, methods and events. Can invoke static members of the loaded assembly types which includes constructor, fields, properties, methods and events. Can load and access assemblies and their types from Global Assembly Cache (GAC) Can create instance of .Net object from the types of the assembly loaded. Can handle .Net exceptions. Can handle, access and invoke .Net events. Can host .Net controls in Delphi VCL Forms. Contains a utility for importing .Net libraries(third party or your own .Net libraries) or WSDL and generates Delphi pas files. Supports Delphi 2010 and higher versions Supports both 32bit and 64bit delphi application and many more. The Runtime Library includes .Net DLL/WSDL Importer for Delphi which is used for importing .Net Assemblies, WSDL or web service XML schema and for generating Delphi classes from the .Net types of the imported assemblies. Example: program LoadDotNetAssembly; {$APPTYPE CONSOLE} {$R *.res} uses {$IF CompilerVersion > 22} System.SysUtils, {$ELSE} SysUtils, {$IFEND } CNClrLib.Host, CNClrLib.Core; var oConsole : _Console; oAsmHelper : _AssemblyHelper; oAssembly : _Assembly; procedure DisplayAssemblyInfo(xAssembly : _Assembly); begin if xAssembly = nil then oConsole.WriteLine_14('Assembly cannot be loaded') else begin oConsole.WriteLine_14('Assembly has been loaded'); oConsole.WriteLine_15('Global Assembly Cache: {0}', xAssembly.GlobalAssemblyCache); oConsole.WriteLine_15('Is Fully Trusted: {0}', xAssembly.IsFullyTrusted); oConsole.WriteLine_15('Location: {0}', xAssembly.Location); oConsole.WriteLine_15('Image Runtime Version: {0}', xAssembly.ImageRuntimeVersion); oConsole.WriteLine_15('Number of Types: {0}', xAssembly.GetTypes.Length); oConsole.WriteLine; oConsole.WriteLine; end; end; procedure LoadAssemblyFromFile; begin oConsole.WriteLine_14('System.Data.dll using Assembly File'); oAssembly := oAsmHelper.LoadFrom('C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Data.dll'); DisplayAssemblyInfo(oAssembly); end; procedure LoadAssemblyByAssemblyName; var oAssemblyName : _AssemblyName; begin oConsole.WriteLine_14('Loading System.Data.dll using AssemblyName Properties and methods'); oAssemblyName := CoAssemblyName.CreateInstance; oAssemblyName.Name := 'System.Data'; oAssemblyName.Version := CoVersion.CreateInstance('2.0.0.0'); oAssemblyName.CultureInfo := CoCultureInfo.CreateInstance(''); oAssemblyName.SetPublicKeyToken(TClrArrayHelper.ToByteArray('b77a5c561934e089')); oAssembly := oAsmHelper.Load_1(oAssemblyName); DisplayAssemblyInfo(oAssembly); end; procedure LoadAssemblyByAssemblyNameString; var oAssemblyName : _AssemblyName; begin oConsole.WriteLine_14('Loading System.Data.dll using AssemblyName with AssemblyString'); oAssemblyName := CoAssemblyName.CreateInstance('System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'); oAssembly := oAsmHelper.Load_1(oAssemblyName); DisplayAssemblyInfo(oAssembly); end; procedure LoadAssemblyWithPartialName; begin oConsole.WriteLine_14('Loading System.Data.dll using Partial Assembly Name'); oAssembly := oAsmHelper.LoadWithPartialName('System.Data'); DisplayAssemblyInfo(oAssembly); end; procedure LoadAssemblyByFilePath; begin oConsole.WriteLine_14('Loading System.Data.dll using File Path'); oAssembly := oAsmHelper.LoadFile('C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Data.dll'); DisplayAssemblyInfo(oAssembly); end; begin oConsole := CoConsole.CreateInstance; oAsmHelper := CoAssemblyHelper.CreateInstance; oConsole.WriteLine_14('Hello! Welcome to .Net Runtime Library for Delphi.'); oConsole.WriteLine_14('=================================================='); oConsole.WriteLine_14('The program demonstrate how to use Static Assembly to Load .Net Assemblies'); oConsole.WriteLine; try LoadAssemblyFromFile; LoadAssemblyByAssemblyName; LoadAssemblyByAssemblyNameString; LoadAssemblyWithPartialName; LoadAssemblyByFilePath; except on E:Exception do oConsole.WriteLine_15('Exception : {0}', E.Message); end; oConsole.ReadKey; end. For more information about the Runtime Library, go to https://www.crystalnet-tech.com/RuntimeLibrary/RuntimeLibrary4Delphi. For more information about the Import Utility, go to https://www.crystalnet-tech.com/RuntimeLibrary/RuntimeLibUtilities. For more development code samples, go to: https://www.crystalnet-tech.com/DevCodeSamples/Default.
  11. The .Net DLL/WSDL Import Utility for Delphi is used for importing .Net assemblies as dll files, WSDL or web service XML schema and generates Delphi classes from the types of the imported assemblies. The Import .Net Assemblies Wizard is used for importing .net assemblies and generating Delphi classes from the types of the imported assemblies. The Import WSDL/Web Services Wizard is also used for importing Web Service Description language file/url or XML schema that describes a web service and generates Delphi classes from the types of the imported WSDL assemblies. Features Import any .Net Libraries. Import any assemblies from the Global Assembly Cache (GAC). Import any Web Services Definition Language(WSDL). Uses the Host Class Library and the Framework Class library to host the .net runtime (CLR) and access the imported assemblies or WSDL without registering the .net dll as COM. For more information, go to https://crystalnet-tech.com/RuntimeLibrary/RuntimeLibUtilities. For more information about the .Net Runtime Library for Delphi (which the .Net DLL/WSDL Import Utility for Delphi is part of), go to https://www.crystalnet-tech.com/RuntimeLibrary/RuntimeLibrary4Delphi
  12. The .Net Runtime Library for Delphi is the best library to work with .Net framework and .Net libraries from Delphi. It is designed to provide a way to interact with applications written in anyone of the .Net languages (such as C#, Visual Basic.Net, Delphi.Net, JScript.Net, etc) from Delphi. The .Net Runtime Library for Delphi allows Delphi to use .Net libraries without the need for registry entries, COM registrations, or changes to the .NET libraries. Applications built with the .Net Runtime Library for Delphi will not require any dll files when deployed. .Net Runtime Library for Delphi allows developers to create applications that can mix managed (.NET) and unmanaged ("native" Delphi) code in the same project. Competitive Advantages: No extra dll is required when deployed. No COM registration of .Net Libraries is required when deployed. There are tools to generate your .Net Libraries into Delphi pas files. Allows Delphi to consume .Net libraries as if they were native code. Full access to .Net Framework Class Library. Easy to use. CNClrLibrary can do so much: Access .Net Framework Class Library. Access Third Party .Net Libraries. Access Your .Net Libraries. etc. Features:- Can access .Net Framework Class Library (such as Collections, Data Configuration, DataSets, Data Access, Database Connectivity, Diagnostics, IO, Linq, Dynamic Linq, System, Device and Application Management, Networking, Reflections, Security, Encryption, Cryptography, Character Encoding and String Manipulation, XML etc). Can access Third Party .Net Libraries. Can access your .Net Libraries. Can host the .Net Common Language Runtime (CLR) in Delphi. Can load and access assemblies and their types from third party .Net libraries or your own .Net libraries or executable files. Can load and access assemblies and their types from Global Assembly Cache (GAC). Can invoke members of the loaded assembly types which includes constructor, fields, properties, methods and events. Can invoke static members of the loaded assembly types which includes constructor, fields, properties, methods and events. Can load and access assemblies and their types from Global Assembly Cache (GAC) Can create instance of .Net object from the types of the assembly loaded. Can handle .Net exceptions. Can handle, access and invoke .Net events. Can host .Net controls in Delphi VCL Forms. Contains a utility for importing .Net libraries(third party or your own .Net libraries) or WSDL and generates Delphi pas files. Supports Delphi 2010 and higher versions Supports both 32bit and 64bit delphi application and many more. The Runtime Library includes .Net DLL/WSDL Importer for Delphi which is used for importing .Net Assemblies, WSDL or web service XML schema and for generating Delphi classes from the .Net types of the imported assemblies. Example: program LoadDotNetAssembly; {$APPTYPE CONSOLE} {$R *.res} uses {$IF CompilerVersion > 22} System.SysUtils, {$ELSE} SysUtils, {$IFEND } CNClrLib.Host, CNClrLib.Core; var oConsole : _Console; oAsmHelper : _AssemblyHelper; oAssembly : _Assembly; procedure DisplayAssemblyInfo(xAssembly : _Assembly); begin if xAssembly = nil then oConsole.WriteLine_14('Assembly cannot be loaded') else begin oConsole.WriteLine_14('Assembly has been loaded'); oConsole.WriteLine_15('Global Assembly Cache: {0}', xAssembly.GlobalAssemblyCache); oConsole.WriteLine_15('Is Fully Trusted: {0}', xAssembly.IsFullyTrusted); oConsole.WriteLine_15('Location: {0}', xAssembly.Location); oConsole.WriteLine_15('Image Runtime Version: {0}', xAssembly.ImageRuntimeVersion); oConsole.WriteLine_15('Number of Types: {0}', xAssembly.GetTypes.Length); oConsole.WriteLine; oConsole.WriteLine; end; end; procedure LoadAssemblyFromFile; begin oConsole.WriteLine_14('System.Data.dll using Assembly File'); oAssembly := oAsmHelper.LoadFrom('C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Data.dll'); DisplayAssemblyInfo(oAssembly); end; procedure LoadAssemblyByAssemblyName; var oAssemblyName : _AssemblyName; begin oConsole.WriteLine_14('Loading System.Data.dll using AssemblyName Properties and methods'); oAssemblyName := CoAssemblyName.CreateInstance; oAssemblyName.Name := 'System.Data'; oAssemblyName.Version := CoVersion.CreateInstance('2.0.0.0'); oAssemblyName.CultureInfo := CoCultureInfo.CreateInstance(''); oAssemblyName.SetPublicKeyToken(TClrArrayHelper.ToByteArray('b77a5c561934e089')); oAssembly := oAsmHelper.Load_1(oAssemblyName); DisplayAssemblyInfo(oAssembly); end; procedure LoadAssemblyByAssemblyNameString; var oAssemblyName : _AssemblyName; begin oConsole.WriteLine_14('Loading System.Data.dll using AssemblyName with AssemblyString'); oAssemblyName := CoAssemblyName.CreateInstance('System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'); oAssembly := oAsmHelper.Load_1(oAssemblyName); DisplayAssemblyInfo(oAssembly); end; procedure LoadAssemblyWithPartialName; begin oConsole.WriteLine_14('Loading System.Data.dll using Partial Assembly Name'); oAssembly := oAsmHelper.LoadWithPartialName('System.Data'); DisplayAssemblyInfo(oAssembly); end; procedure LoadAssemblyByFilePath; begin oConsole.WriteLine_14('Loading System.Data.dll using File Path'); oAssembly := oAsmHelper.LoadFile('C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Data.dll'); DisplayAssemblyInfo(oAssembly); end; begin oConsole := CoConsole.CreateInstance; oAsmHelper := CoAssemblyHelper.CreateInstance; oConsole.WriteLine_14('Hello! Welcome to .Net Runtime Library for Delphi.'); oConsole.WriteLine_14('=================================================='); oConsole.WriteLine_14('The program demonstrate how to use Static Assembly to Load .Net Assemblies'); oConsole.WriteLine; try LoadAssemblyFromFile; LoadAssemblyByAssemblyName; LoadAssemblyByAssemblyNameString; LoadAssemblyWithPartialName; LoadAssemblyByFilePath; except on E:Exception do oConsole.WriteLine_15('Exception : {0}', E.Message); end; oConsole.ReadKey; end. For more information about the Runtime Library, go to https://www.crystalnet-tech.com/RuntimeLibrary/RuntimeLibrary4Delphi. For more information about the Import Utility, go to https://www.crystalnet-tech.com/RuntimeLibrary/RuntimeLibUtilities. For more development code samples, go to: https://www.crystalnet-tech.com/DevCodeSamples/Default.
×