Developer Pointers
Articles and Tips: article
01 Mar 1999
Novell Technical Information Documents
All of the Technical Information Documents (TIDs) discussed below are available at the following locations:
The Novell Technical Solutions Database on CompuServe (GO NTID)
The DeveloperNet Support World Wide Web site (http://devsup.novell.com)
The DeveloperNet Support Bulletin Board (801-861-5836)
Delphi Sample: Check for Btrieve Existence
Author: |
WSC |
Document ID: |
TID102061 |
Date: |
1999/01/25 2:02 PM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
BTRTHERE.EXE |
Novell Product Class: |
NetWare API |
Novell Product And Version: |
NetWare default |
Category: |
none |
Compiler: |
default |
Target OS: |
default |
Abstract
BtrThere Test tool to verify if Btrieve is loaded on the server and accessible. Two different approaches are shown:
Try to load the Btrieve client requester, and use it to create a Btrieve test file on the server. This approach requires the Btrieve requester (WBTRV32.DLL) to be installed on the calling workstation.
Scan the loaded NLMs on the selected target server and check if BTRIEVE.NLM is loaded. This approach requires console operator or Admin rights on the server object. It will only work on NetWare v4.x or v5.x
The Btrieve interface file is available from Pervasive technologies (http://www.pervasive.com). The NetWare functions were taken from the NetWare Developer Kit (NDK) in it's version as of November 1999.
General information on how to use Delphi with the NetWare SDK can be found in the HOW-TO.DOC file.
To run the application, you should have the NetWare Client32 software installed:
CALWIN32.DLLNETWIN32.DLL
LOCWIN32.DLL
Without Client32, only the Btrieve functions can be accessed.
NetWare SDK used: |
NDK Nov98 |
Platform: |
Windows Win95 |
Compilers: |
Borland Delphi 3.x |
Functions used: |
BTRV |
NWGetDriveStatus
NWGetNLMLoadedList
NWGetNLMInfo
Detailed Description
Self-Extracting File Name: BTRTHERE.EXE
Files Included: |
Size |
Date |
Time |
BTRTHERE.TXT |
(this file) |
||
BTRTHERE.DPR |
219 |
1-23-99 |
9:47 AM |
BTRTHERE.RES |
876 |
1-23-99 |
9:47 AM |
BTRTHERE.DOF |
1059> |
1-23-99 |
9:47 AM |
BT_UTIL.PAS |
15235 |
1-23-99 |
9:47 AM |
BTRAPI32.PAS |
7983 |
1-23-99 |
9:47 AM |
UNIT1.PAS |
9033 |
1-23-99 |
9:47 AM |
UNIT1.DFM |
3373 |
1-23-99 |
9:47 AM |
HOW-TO.DOC |
8184 |
1-23-99 |
9:47 AM |
BTRTHERE.DSK |
4711 |
1-23-99 |
9:47 AM |
BTRTHERE.MSG |
1281 |
1-23-99 |
9:47 AM |
BTRTHERE.TXT |
3170 |
1-23-99 |
9:47 AM |
Delphi Sample: Create Custom NDS Reports
Author: |
WSC |
Document ID: |
TID102058 |
Date: |
1999/01/25 9:52 AM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
D3NDSRPT.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare NDK 1.0 |
Category: |
none |
Compiler: |
Delphi 3.0 |
Target OS: |
Windows 95 |
Abstract
D3NDSRpt is a Delphi 2.x/3.x/4.x application that illustrates the use of Delphi with NetWare APIs. It can be used as a "real life application" because it's purpose is a custom NDS report generator.
Most configuration is done per INI file, so you can adapt it to run custom reports on any NDS object and attribute. D3NDSRpt allows you to export reports into comma/tab spearated files for further processing.
General information on how to use Delphi with the NetWare SDK can be found in the HOW-TO.DOC file.
To run the application, you should have the NetWare Client32 software installed.
NetWare SDK used: |
NDK (Jan 99) |
Platform: |
Windows Win95/98/WinNT |
Compilers: |
Borland Delphi 2.x/3.x/4.x |
Though it was not written for Delphi v1.x (16bit), it could be converted with only minor modifications.
Functions Used: D3NDSRpt demonstrates the following high-level functions:
DoSomethingForEachObject2ReadSelectedProperties
DSFindFirstObject
DSFindNextObject
These in term call the APIs:
NWDSCreateContextHandleNWDSGetContext
NWDSSetContext
NWDSAllocBuf
NWDSInitBuf
NWDSPutAttrName
NWDSRead
NWDSList
NWDSGetObjectCount
NWDSGetObjectName
NWDSGetAttrCount
NWDSGetAttrName
NWDSComputeAttrValSize
NWDSGetAttrVal
NWDSFreeBuf
NWDSFreeContext
Note: Since D3NDSRpt will save current settings into an INI file in, you will need sufficient rights in the path where the EXE is located.
Detailed Description
Self-Extracting File Name: D3NDSRPT.EXE
Files Included: |
Size |
Date |
Time |
D3NDSRPT.TXT |
(this file) |
||
HOW-TO.DOC |
9767 |
1-22-99 |
6:50 PM |
DSREPORT.RES |
876 |
1-22-99 |
6:50 PM |
DELPHI_U.PAS |
83340 |
1-22-99 |
6:50 PM |
DSREPORT.DPR |
199 |
1-22-99 |
6:50 PM |
DELPHI_U.DCU |
64590 |
1-22-99 |
6:50 PM |
MAIN.DFM |
3713 |
1-22-99 |
6:50 PM |
DSREPORT.INI |
6858 |
1-22-99 |
6:50 PM |
MAIN.DCU |
14491 |
1-22-99 |
6:50 PM |
DSREPORT.EXE |
441344 |
1-22-99 |
6:50 PM |
MAIN.PAS |
16281 |
1-22-99 |
6:50 PM |
DSREPORT.DSK |
4801 |
1-22-99 |
6:50 PM |
DSREPORT.DOF |
1057 |
1-22-99 |
6:50 PM |
READ.ME |
1593 |
1-22-99 |
6:50 PM |
D3NDSRPT.MSG |
1578 |
1-22-99 |
6:50 PM |
Delphi Sample: Change User Home Directories with ActiveX
Author: |
WSC |
Document Id: |
TID102062 |
Date: |
1999/01/25 2:02 PM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
D3XHOME.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare NDK 1.0 |
Category: |
none |
Compiler: |
Delphi 3.0 |
Target OS: |
Windows 95 |
Abstract
D3XHome is a Delphi 3.x application that illustrates the use of Delphi with NetWare ActiveX controls.
It will allow you to scan the tree, display objects and some object information. It will specifically allow you to view and change users' home directories. If the Home directory is changed, the trustee rights will also be added.
This sample is based on the NW Volume Admin control and the NW Directory control v1.3 and requires the NetWare ActiveX controls to be installed. You can download the latest OCX controls from the DeveloperNet Web pages at http://developer.novell.com
Platform: |
Win95/98/WinNT |
Compilers: |
Borland Delphi 3.x |
Detailed Description
Self-Extracting File Name: D3XHOME.EXE
Files Included: |
Size |
Date |
Time |
D3XHOME.TXT |
(this file) |
||
NETWARE.ICO |
766 |
1-21-99 |
7:17 AM |
NWTREE.ICO |
766 |
1-21-99 |
7:17 AM |
NWADMIN.ICO |
766 |
1-21-99 |
7:17 AM |
SELCONT.DFM |
2160 |
1-21-99 |
7:17 AM |
SELCONT.PAS |
7007 |
1-21-99 |
7:17 AM |
HOW-TO.DOC |
8151 |
1-21-99 |
7:17 AM |
READ.ME |
679 |
1-21-99 |
7:17 AM |
HOMEDIR.RES |
876 |
1-21-99 |
7:17 AM |
HOMEDIR.DPR |
302 |
1-21-99 |
7:17 AM |
HOMEDIR.DOF |
1008 |
1-21-99 |
7:17 AM |
HOMEDIRU.PAS |
11955 |
1-21-99 |
7:17 AM |
HOMEDIRU.DCU |
14665 |
1-21-99 |
7:17 AM |
HOMEDIR.EXE |
330752 |
1-21-99 |
7:17 AM |
HOMEDIRU.DFM |
4160 |
1-21-99 |
7:17 AM |
HOMEDIR.DSK |
3613 |
1-21-99 |
7:17 AM |
SELCONT.DCU |
10532 |
1-21-99 |
7:17 AM |
D3XHOME.MSG |
664 |
1-21-99 |
7:17 AM |
Delphi Sample: Bindery Browser with ActiveX
Author: |
WSC |
Document ID: |
TID102063 |
Date: |
1999/01/25 2:02 PM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
D3XBIND1.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare NDK 1.0 |
Category: |
none |
Compiler: |
Delphi 3.0 |
Target OS: |
Windows 95 |
Abstract
D3XBind1 is a Delphi 3.x application that illustrates the use of Delphi with NetWare ActiveX controls.
It will allow you to browse the bindery objects of connected servers. It displays all objects and their property values in a simple format.
This sample is based on the NW Bindery control v1.2 and the NW Session Control v1.2.
Prerequisites: NetWare Client 32 Installation of the NetWare ActiveX controls
You can download the latest controls from the DeveloperNet Web pages at http://developer.novell.com
Platform: |
Win95/98/WinNT |
Compilers: |
Borland Delphi 3.x |
Detailed Description
Self-Extracting File Name: D3XBIND1.EXE
Files Included: |
Size |
Date |
Time |
D3XBIND1.TXT |
(this file) |
||
UNIT1.PAS |
9385 |
1-21-99 |
1:38 PM |
UNIT1.DFM |
4310 |
1-21-99 |
1:38 PM |
UNIT1.DCU |
13526 |
1-21-99 |
1:38 PM |
READ.ME |
613 |
1-21-99 |
1:38 PM |
NWTREE.ICO |
766 |
1-21-99 |
1:38 PM |
NWADMIN.ICO |
766 |
1-21-99 |
1:38 PM |
HOW-TO.DOC |
9767 |
1-21-99 |
1:38 PM |
D3XBIND1.RES |
876 |
1-21-99 |
1:38 PM |
NETWARE.ICO |
766 |
1-21-99 |
1:38 PM |
BIND1.DOF |
1059 |
1-21-99 |
1:38 PM |
BIND1.EXE |
313344 |
1-21-99 |
1:38 PM |
BIND1.DSK |
3747 |
1-21-99 |
1:38 PM |
BIND1.DPR |
237 |
1-21-99 |
1:38 PM |
D3XBIND1.MSG |
596 |
1-21-99 |
1:38 PM |
Retrieving IP Interface Information (IPExtendedIFInfo) on a NetWare Server
Author: |
EEK |
Document ID: |
TID102060 |
Date: |
1999/01/25 2:02 PM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
XBSDE004.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare default |
Category: |
none |
Compiler: |
default |
Target OS: |
default |
Abstract
The sample shows how to retrieve IP interface information such as IP address, subnet mask, broadcast address, etc. on a NetWare server.
Detailed Description
This document supply the sample program for the IPExtendedIFInfo API discussed in another TID DBSDE001.
Self-Extracting File Name: XBSDE004.EXE
Files Included: |
Size |
Date |
Time |
XBSDE004.TXT |
(this file) |
||
MAKEFILE |
3238 |
1-20-99 |
12:30 PM |
GETIPINF.NLM |
2961 |
1-20-99 |
12:30 PM |
IPINFO.H |
2190 |
1-20-99 |
12:30 PM |
TCPIP.IMP |
76 |
1-20-99 |
12:30 PM |
XBSDE004.MSG |
137 |
1-20-99 |
12:30 PM |
XBSDE004.TXT |
2003 |
1-20-99 |
1:28 PM |
GETIPINF.C |
2386 |
1-20-99 |
12:30 PM |
Delphi Sample ChangeObjectPassword
Author: |
CMI |
Document ID: |
TID102057 |
Date: |
1999/01/22 5:01 PM |
Alert Status: |
Yellow |
Information Type: |
Issue |
README FOR: |
XDELPHI1.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare SDK 15.0 |
Category: |
none |
Compiler: |
Delphi 4.0 |
Target OS: |
Windows NT 4.0 WKS SP1 |
Abstract
Demonstrates NWDSChangeObjectPassword(). Initializes libraries, sets context and establishes an authenticated connection with a remote server and allows the user to change an object password.
Detailed Description
Self-Extracting File Name: XDELPHI1.EXE
Files Included: |
Size |
Date |
Time |
XDELPHI1.TXT |
(this file) |
||
MAIN.PAS |
2439 |
1-20-99 |
11:51 AM |
MAIN.DFM |
682 |
1-20-99 |
11:51 AM |
CHANGEPASSWORD.RES |
876 |
1-20-99 |
11:51 AM |
CHANGEPASSWORD.CFG |
607 |
1-20-99 |
11:51 AM |
CHANGEPASSWORD.DOF |
1559 |
1-20-99 |
11:51 AM |
CHANGEPASSWORD.DPR |
192 |
1-20-99 |
11:51 AM |
XDELPHI1.MSG |
194 |
1-20-99 |
11:51 AM |
XDELPHI1.TXT |
1976 |
1-21-99 |
2:23 PM |
Delphi Sample: Command Line to Grant Rights
Author: |
WSC |
Document ID: |
TID102052 |
Date: |
1999/01/19 11:19 AM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
D3LRITE.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare NDK 1.0 |
Category: |
none |
Compiler: |
Delphi 3.0 |
Target OS: |
Windows 95 |
Abstract
Description This command line tool partially fills the gap left by RIGHTS.EXE and handles long ile/path names. It does not offer RIGHTS.EXE's full functionality, but just the capability to add trustees to a path/file.
Call LRIGHTS.EXE without parameteres to get syntaxt information. General information on how to use Delphi with the NetWare SDK can be found in the HOW-TO.DOC file.
To run the application, you need to have the NetWare client software installed and need access to the 16 bit or 32 bit NetWare DLLs as provided in the NetWare Client software:
CALWINxx.DLLNETWINxx.DLL
CLXWINxx.DLL
LOCWINxx.DLL
where xx stands for `16' or `32'
NetWare SDK used: |
NDK Nov 1998 |
Platform: |
Windows Win95/98 / WinNT |
Compilers: |
Borland Delphi 2.x/3.x/4.x |
Though it was not written for Delphi v1.x (16bit), it could be converted with only minor modifications.
Functions Used: LRIGHTS demonstrates the following NetWare API functions:
NWAddTrusteeNWParsePath
NWDSMapNameToID
Detailed Description
Self-Extracting File Name: D3LRITE.EXE
Files Included: |
Size |
Date |
Time |
D3LRITE.TXT |
(this file) |
||
HOW-TO.DOC |
8184 |
1-18-99 |
8:06 AM |
LRIGHTS.DOF |
1096 |
1-18-99 |
8:06 AM |
LRIGHTS.EXE |
42496 |
1-18-99 |
8:06 AM |
LRIGHTS.DOC |
1051 |
1-18-99 |
8:06 AM |
LRIGHTS.DPR |
7152 |
1-18-99 |
8:06 AM |
LRIGHTS.DSK |
2880 |
1-18-99 |
8:06 AM |
D3LRITE.MSG |
1047 |
1-18-99 |
8:06 AM |
D3LRITE.TXT |
2797 |
1-19-99 |
11:09 AM |
Win32 Limitations on TLS (Thread Local Storage)
Author: |
HHE |
Document ID: |
TID102049 |
Date: |
1999/01/15 9:05 AM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
WIN32TLS.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare NDK 1.0 |
Category: |
none |
Compiler: |
MS Visual Studio 5.0 |
Target OS: |
Windows 95 |
Abstract: The Win32 limitation on TLS causes some products not to function properly.
Detailed Description
Win32 only allows 64 slots for DLLs to load, if some third party products are loaded the total of 55 slots are taken, the next product that needs 9 slots to load the corresponding DLLs will fail and not function properly. the work around is to unload the DLLs that are not needed.
Self-Extracting File Name: WIN32TLS.EXE
Files Included: |
Size |
Date |
Time |
WIN32TLS.TXT |
(this file) |
||
WIN32TLS.MSG |
76 |
1-14-99 |
4:49 PM |
WIN32TLS.TXT |
1917 |
1-15-99 |
8:53 AM |
Delphi Sample: Address Filters with GW Object APIs
Author: |
WSC |
Document ID: |
TID102047 |
Date: |
1999/01/13 8:29 AM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
D3GWAFLT.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare NDK 1.0 |
Category: |
none |
Compiler: |
Delphi 3.0 |
Target OS: |
Windows 95 |
Abstract
D3GWAFlt is a Delphi 32 bit application that illustrates the use of Delphi with GroupWise's Object APIs.
The purpose of this sample is to allow experimentation with the "Find" method for Address Book Entries. To run the application, you must have the GroupWise client installed.
NetWare SDK used: |
NDK - Nov 98 |
Platform: |
Windows Win95/98/WinNT |
Compilers: |
Borland Delphi 3.x (easily changable to v2.x/4.x ) |
Detailed Description
Self-Extracting File Name: D3GWAFLT.EXE
Files Included: |
Size |
Date |
Time |
D3GWAFLT.TXT |
(this file) |
||
OPNMAIL.ICO |
1078 |
1-13-99 |
8:26 AM |
ADDRFILT.DPR |
186 |
1-13-99 |
8:26 AM |
MAIN.PAS |
5147 |
1-13-99 |
8:26 AM |
MAIN.DCU |
6085 |
1-13-99 |
8:26 AM |
READ.ME |
547 |
1-13-99 |
8:26 AM |
ADDRFILT.EXE |
252928 |
1-13-99 |
8:26 AM |
ADDRFILT.RES |
1220 |
1-13-99 |
8:26 AM |
ADDRFILT.DSK |
1947 |
1-13-99 |
8:26 AM |
ADDRFILT.DOF |
1068 |
1-13-99 |
8:26 AM |
MAIN.DFM |
1991 |
1-13-99 |
8:26 AM |
D3GWAFLT.MSG |
429 |
1-13-99 |
8:26 AM |
Delphi Sample: Add Trustees on Long File names
Author: |
WSC |
Document ID: |
TID102046 |
Date: |
1999/01/13 8:16 AM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
D3ADDTRS.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare NDK 1.0 |
Category: |
none |
Compiler: |
Delphi 3.0 |
Target OS: |
Windows 95 |
Abstract
This sample program allows you to experiment with different file formats (long names & DOS names) when assigning trustee rights to files or directories.
General information on how to use Delphi with the NetWare SDK can be found in the HOW-TO.DOC file.
To run the application, you should have the NetWare client software installed and need access to the 16 bit or 32 bit NetWare DLLs as provided in the NetWare Client software:
CALWINxx.DLLNETWINxx.DLL
CLXWINxx.DLL
LOCWINxx.DLL
where xx stands for `16' or `32'
NetWare SDK used: |
NDK Nov 1998 |
Platform: |
Windows Win95/98/WinNT |
Compilers: |
Borland Delphi 2.x/3.x |
Though it was not written for Delphi v1.x (16bit), it could be converted with only minor modifications.
Functions Used: D3AddTrs demonstrates the following NetWare API functions:
NWAddTrusteeNWParsePath
NWDSMapNameToID
Self-Extracting File Name: D3ADDTRS.EXE
Files Included: |
Size |
Date |
Time |
D3ADDTRS.TXT |
(this file) |
||
NWADMIN.ICO |
766 |
1-13-99 |
8:16 AM |
HOW-TO.DOC |
8184 |
1-13-99 |
8:16 AM |
MAIN.DFM |
2182 |
1-13-99 |
8:16 AM |
MAIN.DCU |
13415 |
1-13-99 |
8:16 AM |
READ.ME |
920 |
1-13-99 |
8:16 AM |
ADDTRUST.EXE |
264704 |
1-13-99 |
8:16 AM |
ADDTRUST.DOF |
1059 |
1-13-99 |
8:16 AM |
ADDTRUST.DPR |
226 |
1-13-99 |
8:16 AM |
MAIN.PAS |
6236 |
1-13-99 |
8:16 AM |
ADDTRUST.DSK |
2742 |
1-13-99 |
8:16 AM |
ADDTRUST.RES |
876 |
1-13-99 |
8:16 AM |
D3ADDTRS.MSG |
903 |
1-13-99 |
8:16 AM |
VB Sample Code Which Uses DLL Calls to Browse DS Tree
Author: |
RLE |
Document ID: |
TID102044 |
Document Revision: |
B |
Date: |
1999/01/8 8:10 AM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
VBBROWSE.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare default |
Category: |
none |
Compiler: |
Visual Basic 5.0 |
Target Os: |
default |
Abstract
VB sample code which demonstrates how to use Novell's DLL calls for retrieving graphical DS tree structure.
Detailed Description
VB sample code which demonstrates how to use Novell's DLL calls for retrieving graphical DS tree structure. We suppose that user is already authenticated. Only very limited error handling is implemented to keep code as simple as possible. Multiple tree support is implemented.
Self-Extracting File Name: VBBROWSE.EXE
Files Included: |
Size |
Date |
Time |
VBBROWSE.TXT |
(this file) |
||
VOLUME.ICO |
318 |
1-8-99 |
5:21 AM |
USER.ICO |
318 |
1-8-99 |
5:21 AM |
UNKNOWN.ICO |
318 |
1-8-99 |
5:21 AM |
TREE.ICO |
318 |
1-8-99 |
5:21 AM |
TEMPLATE.ICO |
318 |
1-8-99 |
5:21 AM |
SERVER.ICO |
318 |
1-8-99 |
5:21 AM |
ROOT.ICO |
318 |
1-8-99 |
5:21 AM |
PSERVER.ICO |
318 |
1-8-99 |
5:21 AM |
AUDTFILE.ICO |
318 |
1-8-99 |
5:21 AM |
PRINTER.ICO |
318 |
1-8-99 |
5:21 AM |
PQUEUE.ICO |
318 |
1-8-99 |
5:21 AM |
OU.ICO |
318 |
1-8-99 |
5:21 AM |
ORGROLE.ICO |
318 |
1-8-99 |
5:21 AM |
O.ICO |
318 |
1-8-99 |
5:21 AM |
NETWARE.BAS |
3715 |
1-8-99 |
5:21 AM |
LOCALITY.ICO |
318 |
1-8-99 |
5:21 AM |
GROUP.ICO |
318 |
1-8-99 |
5:21 AM |
DIRMAP.ICO |
318 |
1-8-99 |
5:21 AM |
COUNTRY.ICO |
318 |
1-8-99 |
5:21 AM |
PROFILE.ICO |
318 |
1-8-99 |
5:21 AM |
VBBROWSE.VBW |
80 |
1-8-99 |
5:21 AM |
VBBROWSE.VBP |
685 |
1-8-99 |
5:21 AM |
VBBROWSE.FRX |
28 |
1-8-99 |
5:21 AM |
VBBROWSE.FRM |
15133 |
1-8-99 |
5:21 AM |
VBBROWSE.MSG |
109 |
1-8-99 |
5:21 AM |
Delphi Sample: Personal GW Appointment With Object API
Author: |
WSC |
Document ID: |
TID102043 |
Document Revision: |
DATE: 1999/01/8 8:10 AM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
D3GWPAPP.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare NDK 1.0 |
Category: |
none |
Compiler: |
Delphi 3.0 |
Target OS: |
Windows 95 |
Abstract
This easy sample shows how to add a personal appointment into the user calendar.
Detailed Description
Self-Extracting File Name: D3GWPAPP.EXE
Files Included: |
Size |
Date |
Time |
D3GWPAPP.TXT |
(this file) |
||
PERSAPPT.RES |
876 |
1-8-99 |
3:54 AM |
PERSAPPT.DPR |
188 |
1-8-99 |
3:54 AM |
UNIT1.DFM |
533 |
1-8-99 |
3:54 AM |
UNIT1.DCU |
4557 |
1-8-99 |
3:54 AM |
PERSAPPT.EXE |
229376 |
1-8-99 |
3:54 AM |
UNIT1.PAS |
3430 |
1-8-99 |
3:54 AM |
PERSAPPT.DOF |
1068 |
1-8-99 |
3:54 AM |
PERSAPPT.DSK |
3952 |
1-8-99 |
3:54 AM |
D3GWPAPP.MSG |
82 |
1-8-99 |
3:54 AM |
D3GWPAPP.TXT |
1891 |
1-8-99 |
7:56 AM |
VB Sample Which Demonstrates How to Get Opened Files on a Given Server
Author: |
RLE |
Document ID: |
TID102041 |
Document Revision: |
DATE: 1999/01/6 8:33 AM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
VBMONIT.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare default |
Category: |
none |
Compiler: |
Visual Basic 5.0 |
Target OS: |
Windows NT 4.0 WKS SP3 |
Abstract
Sample code which demonstrates how to use DLL function calls in VB when retrieving currently opened files on a given server.
Detailed Description
Sample code which demonstrates how to use DLL function calls in VB when retrieving currently opened files on a given server.
The DLL calls used:
NWCCOpenConnByName()NWGetFileServerInformation()
NWGetConnectionInformation()
NWScanOpenFilesByConn2()
NWGetVolumeName()
NWGetPathFromDirectoryBase()
User should be already authenticated on given server before running this program.
Self-Extracting File Name: VBMONIT.EXE
Files Included: |
Size |
Date |
Time |
VBMONIT.TXT |
(this file) |
||
PROJECT1.VBP |
665 |
1-6-99 |
8:32 AM |
FORM1.FRM |
12630 |
1-6-99 |
8:32 AM |
FORM1.FRX |
28 |
1-6-99 |
8:32 AM |
VBMONIT.MSG |
128 |
1-6-99 |
8:32 AM |
List of NetWare APIs for Windows
Author: |
WSC |
Document ID: |
TID102040 |
Date: |
1999/01/4 8:31 AM |
Information Type: |
Issue |
Readme For: |
DLLFCT.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare NDK 1.0 |
Category: |
none |
Compiler: |
default |
Target OS: |
default |
Alert Status: |
Yellow |
Abstract
Ever wondered what NetWare DLL for Windows contains a specific NetWare function?
Here are two function lists one sorted by function name, the other by DLL name.
Detailed Description
Self-Extracting File Name: DLLFCT.EXE
Files Included: |
Size |
Date |
Time |
DLLFCT.TXT |
(this file) |
||
BYNAME.FCT |
37019 |
12-30-98 |
5:05 AM |
BYDLL.FCT |
37021 |
12-30-98 |
5:05 AM |
DLLFCT.MSG |
167 |
12-30-98 |
5:05 AM |
Set/get the Value of the Datastream Field in the SPX Header Using WinSock
Author: |
EEK |
Document ID: |
TID102038 |
Date: |
1998/12/22 1:13 PM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
IWS2E011.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare default |
Category: |
none |
Compiler: |
default |
Target OS: |
default |
Detailed Description
IPX_DSTYPE definition in WSNWLINK.H lets the user controls the SPX datastream type field. Use it in setsockopt() to change the outgoing datastream type and in getsockopt() to get the lasting incoming datastream type.
Self-Extracting File Name: IWS2E011.EXE
Files Included: |
Size |
Date |
Time |
IWS2E011.TXT |
(this file) |
||
IWS2E011.MSG |
0 |
12-22-98 |
1:13 PM |
WinSock SOCK_SEQPACKET Information
Author: |
EEK |
Document ID: |
TID102037 |
Date: |
1998/12/21 12:52 PM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
IWS2E010.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare default |
Category: |
none |
Compiler: |
default |
Target OS: |
default |
Detailed Description
Question: We are writing some sort of RCONSOLE utility for Win32. So we connect to RSPX in unsigned mode (one of the parameters of RSPX is signatures off). If we are not doing any recv on the client, the closesocket goes well, but if call recv, the NetWare server boots when closing the connection. May be this is both a problem of the Microsoft IPX/SPX implementation and of some NetWare modules.
The strangest thing we encountered is that when the first data packet arrives from NetWare (its size is 520), the ioctlsocket function tells us that we received 520 bytes but if we call recv trying to read 520 bytes, the recv function blocks. If we call recv trying to read n bytes where 0 abnormal because as the documentation states, recv must return the number of bytes received (a positive value), 0 if the connection is closed or SOCKET_ERROR when an error occured.
All these (the strange values returned by recv) happens when we are using a SOCK_SEQPACKET socket. The boot happens in both cases (i.e. when using SOCK_SEQPACKET or SOCK_STREAM).
Using a network monitor, we observed that the end of connection is negotiated correctly, because we receive the end of connection acknowledgement from the NetWare server.
Note that we wrote a year ago an MSDOS version of this utility, that runs well. Now we can not escape from this error in Windows. Despite the WinSock documentation (the SO_LINGER option for setsockopt), abort the connection (without negotiating the end of connection).
Answer: As for the WinSock behavior you describe, this is (almost) normal, although it does suggest a boundary condition problem in the Microsoft WinSock service provider. When operating in SEQPACKET mode, the WinSock API maintains messages boundaries, which basically says that one send() will be received in exactly one recv(). This functionality can be modified with the MSG_PARTIAL bit that lets you bundle multiple sends into a single message, and hence into a single receive. If you look at the WinSock 2 spec, you will see that WSARecv() defines `flags' as an IN/OUT parameter. This allows WSARecv() to return the MSG_PARTIAL bit, which in turn lets you receive a part of a message before the whole thing has arrived.
WinSock 1.1 does not let you return flags on the recv() call, so a different convention was needed. The agreed upon convention is that recv() will flag a partial message receive by returning the recv() data count as a negative number. If you get 520, that tells you that you have received one full message of 520 bytes. If you get -520, that tells you that you have received a 520 byte fragment of a larger message.
In your case, an SPX packet that does not have the end-of-message bit set is received. The end-of-message bit is what SPX uses to differentiate messages. The Ioctl correctly reports that 520 bytes are available. The rule for recv() in SEQPACKET mode is that if
you set the MSG_PARTIAL bit in the flags field, or
you send down a buffer that is smaller than the full message, then the stack will generate a partial-message response.
So, when you recv 0 < n < 520, the stack correctly returns a count of -n, telling you that you have not received the entire message. This should also have worked when you passed down 520 bytes, and the failure you mentioned would be considered a bug.
Self-Extracting File Name: IWS2E010.EXE
Files Included: |
Size |
Date |
Time |
IWS2E010.TXT |
(this file) |
||
IWS2E010.MSG |
0 |
12-21-98 |
12:51 PM |
Tool to Update LDAP Group Mapping Attributes
Author: |
MMA |
Document ID: |
TID102036 |
Date: |
1998/12/18 11:00 AM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
LDAPMAP.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare SDK 15.0 |
Category: |
none |
Compiler: |
MS Visual Studio 5.0 |
Target OS: |
Windows 98 |
Abstract
maputil.exe is a tool to update the LDAP_ATTRIBUTE_MAP_V11 and LDAP_CLASS_MAP_V11 attributes of the LDAP Group object.
Detailed Description
maputil.exe is a tool to update the LDAP_ATTRIBUTE_MAP_V11 and LDAP_CLASS_MAP_V11 attributes of the LDAP Group object. In order for LDAP to recognize the custom classes and attributes defined by the external developers, the developer has to update the mappings contained in these attributes in the LDAP group object.
Currently, the only released tool to do this update is through NWAdmin32, so it is very inefficient. This tool will let developer export the values of the attributes to a file and modify the file using a text editor and then import the file to the attribute. This will be very efficient for developers who need to map many custom classes and attributes.
Self-Extracting File Name: LDAPMAP.EXE
Files Included: |
Size |
Date |
Time |
LDAPMAP.TXT |
(this file) |
||
MAPUTIL.EXE |
115200 |
12-18-98 |
11:00 AM |
README.TXT |
831 |
12-18-98 |
11:00 AM |
MAP2.BAT |
185 |
12-18-98 |
11:00 AM |
A.MAP |
2544 |
12-18-98 |
11:00 AM |
C.MAP |
666 |
12-18-98 |
11:00 AM |
LDAPMAP.MSG |
120 |
12-18-98 |
11:00 AM |
ASP Sample Code Which Retrieves Attributes/Values From Given DS Object
Author: |
RLE |
Document Id: |
TID102029 |
Date: |
1998/12/10 7:08 AM |
Alert Status: |
Yellow |
Information Type: |
Issue |
Readme For: |
ASPREADS.EXE |
Novell Product Class: |
NetWare API |
Novell Product and Version: |
NetWare default |
Category: |
none |
Compiler: |
default |
Target OS: |
Windows NT 4.0 WKS SP3 |
Abstract
Sample code which demonstrates how to use Novell's ActiveX controls NWDir and NWSess in Microsoft's ASP environment.
The code shows how--using this ActiveX controls--various object's attributes and their values can be retrieved from DS.
Detailed Description
Sample code which demonstrates how to use Novell's ActiveX controls NWDir and NWSess in Microsoft's ASP environment. The code shows how using this ActiveX controls various object's attributes and their values can be retrieved from DS. In the first step ASP user must authenticate into DS prior to start any information retrieval from DS tree. To keep code simple and clear, the entry data are hardcoded (userName, password and treeName for login and object's name for attributes/values retrieval).
There is no error handling in case you enter wrong DS object full name. Novell's ActiveX Control files for NWDir and NWSess must be copied into Microsoft's WEB server working directory in order to work properly. Also you need to use Microsoft's Internet Explorer 4.x in order to run this demo because other browsers do not understand Microsoft's ASP extensions and/or VBScript language.
Self-Extracting File Name: ASPREADS.EXE
Files Included: |
Size |
Date |
Time |
ASPREADS.TXT |
(this file) |
||
ASPREADS.ASP |
6453 |
12-10-98 |
7:08 AM |
ASPREADS.MSG |
243 |
12-10-98 |
7:08 AM |
NDS Tree Search Using WinSock 2 API
AUTHOR: |
EEK |
DOCUMENT ID: |
TID102031 |
DOCUMENT REVISION: |
C |
DATE: |
1998/12/10 5:55 PM |
ALERT STATUS: |
Yellow |
INFORMATION TYPE: |
Issue |
README FOR: |
XWS2E003.EXE |
NOVELL PRODUCT CLASS: |
NetWare API |
Novell Product and Version: |
NetWare default |
CATEGORY: |
none |
COMPILER: |
default |
TARGET OS: |
default |
Abstract
This sample program is intended for NLM platform.
Detailed Description
This program is intended to show how to obtain name space independence with WinSock 2. The name space independence is accomplished with WinSock 2 Service Class. This example is intended to find NDS tree services using SLP and SAP.
Self-Extracting File Name: XWS2E003.EXE
Files Included: |
Size |
Date |
Time |
XWS2E003.TXT |
(this file) |
||
XWS2E003.MSG |
51 |
12-10-98 |
5:51 PM |
XWS2E003.TXT |
1948 |
12-10-98 |
5:51 PM |
TREESRCH.NLM |
9743 |
12-10-98 |
5:51 PM |
TREESRCH.C |
8409 |
12-10-98 |
5:51 PM |
Disclaimer
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.