Using Low-Level Delphi to Build eDirectory Applications
Novell Cool Solutions: Feature
By Wolfgang Schreiber
Digg This -
Posted: 5 Mar 2002
Wolfgang Schreiber, Manager of Novell EMEA Developer Support, authored this AppNote article on the more complex but often more efficient low-level technique of Delphi - eDirectory programming. The article introduces a Delphi helper unit that allows you to combine the speed of low-level programming with the comfort of high-level syntax.Here's what he covers:
- Important Concepts
- Before We Get Started
- Common eDirectory Tasks
Here's the full article:
Low-level programming for NetWare with Delphi uses direct calls into the NetWare Client APIs. The Novell NetWare client implements this client interface in the form of Dynamic Link Libraries (DLLs). Practically all NetWare Windows applications (with NWAdmin.exe being a prime example) call into these DLLs, which is significantly faster than calling into an intermediate OLE layer (like with the ActiveX controls).
One drawback of this approach is that you have to choose between literally hundreds of available APIs; but the main disadvantage is that you typically must call a sequence of multiple APIs to perform basic functions such as locating an NDS object or reading attributes. You have to familiarize yourself with topics like buffer handling or pointer operations in NDS APIs.
If this sounds complicated, that's because it often is. But in this AppNote I will try to make things easy, do one step at a time, and take you by the hand on your way. You may find that the first steps are not as difficult as you may have thought--and you may be surprised by the snappy performance of your applications. Using the low-level approach avoids the entire overhead that must be implemented in ActiveX controls. You don't need to talk to the OLE layers in Windows, and your application requests no more information from the network than it actually needs.
Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com