SEC 3/13/95 ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ Network Force 1.1 ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Network Force 1.1 has emerged from final beta and is now shipping worldwide. Based on optimized ASM primitives, NWF provides FORCE developers with complete control of and access to Novell 3.x-4.x systems for FORCE 2.4c. "We spent quite a bit of time analyzing developers' needs," stated Barry Freeman, author of NWF, in a recent interview. "As a result, support for Novell 2.x was eliminated, which made it easier to provide a consistent implementation. It also gave us the ideas for several of the metafunctions in NWF - higher level comprehensive calls that accomplish a great deal on a drop in basis and which require less upfront knowledge of Novell internals on the part of the developer. The other critical design decision that we made was to restrict compatibility to FORCE version 2.4c and later, which let us rely on the new standardized internals of the current FORCE compiler and made our job a lot easier in terms of providing the lightning-fast optimized performance FORCE developers are used to, since we didn't have to work with the older versions that had different memory handling methods". NWF features a total of 162 different functions and procedures that provide FORCE developers an unprecedented control of the Novell OS in the area of critical services such as accounting, bindery, connection, file and file server, messaging, print, queue, synchronization, and transaction tracking. NWF is published by Software Evolution Corp. and officially begins shipping on March 15, 1995. See the enclosed list for specifics of functions and procedures provided by NWF. A special introductory price of $49.00 has been arranged for current owners of FORCE 2.4c. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ FDOC 1.01 ships! ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ FDOC 1.01, the long-awaited documentation engine for FORCE 2.4c, is now officially out of beta and begins shipping March 15, 1995. FDOC provides for complete documentation of FORCE code, including formatting, flowcharting, and crossreferencing of source files. In addition, it tracks details of parameter passing methods for each function and procedure, as well as alias tracking and crossreferencing, and automates handily the production chores for conversion of project source files to hypertext for easy reference via any of several popular hypertext compilers such as Expert Help. "FDOC is written in FORCE 2.4c itself," explains author David Barrett, "and we had a good deal of previous experience from our 1993-94 production in FORCE of the popular DOC engine for Clipper 5.x, which even extends to documentation of code blocks. It seemed like a natural extension to transfer the same documentation technology to FORCE, since many of the internal parsing routines are similar." FDOC is published by Software Evolution Corp. and is now available at a special introductory pricing of $24.00 - see the enclosed form for more details. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ New Repository Technology ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Introduction of the new FORCE repository technology MKHDR/RED was announced today by Guenther Daubach, Chief Executive of Guenther Daubach & Associates, owners of the FORCE/FCO family of compilers. Published by Software Evolution Corp., MKHDR/RED will begin shipping on March 13. "This is probably the most important development in FORCE since the introduction of the compiler itself," commented Mr. Daubach. "It eliminates in several ways the headaches that come naturally with a single-pass compiler. Because FORCE is a single-pass compiler (it only scans each line of source code once), as opposed to other compilers which are multiple-pass, it must hold all memory references in its internal symbol table during compilation. Consequently, the required declaration and prototyping of functions and procedures, which has been previously accomplished through the use of header or #include files, can lead to memory problems, since a particular header file needed for a given function probably contains many references not required in the source code being scanned by the compiler." MKHDR.EXE: the header engine for FORCE 2.4c ------------------------------------------- The new FORCE repository technology is centered around two tools and a central repository database. MKHDR.EXE is used to scan source code files and construct on the fly a customized .hdx file that contains only the specific declarations and prototypes that are required by the source code file in question. MKHDR can also generate prototypes on the fly for undeclared UDFs, VARDEFs, and the like and can use them as well in conjunction with the standard FORCE declarations contained in the standard repository to ensure problem-free code. RED.EXE - the repository editor for FORCE 2.4c ---------------------------------------------- In conjunction with MKHDR, RED.EXE is the automated repository editor that enables the developer to significantly customize his development repository. RED provides for both automated declaration, prototype, and #DEFINE import from an existing group of .hdr files and for individual customized declaration of a single prototype or #DEFINE. Complete data is maintained automatically as respects type and method (reference, value, or constant) where necessary, and REDs ability to scan files recursively makes it a snap to operate at the press of a key. Use of RED and MKHDR also permit significant degrees of customization between applications or series of applications in a way that lets the FORCE developer avoid future maintenance problems and incorporate future declaration changes on the fly. "At the introductory price of $24, we expect the FORCE community will adopt the new repository technology as the standard of painless productivity as quickly as they are exposed to it. The tools involved have been in use here for over a year and we couldn't work without them." - Guenther Daubach, Daubach & Associates ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ SOFTWARE ORDER FORM ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ PRINT CLEARLY - We cannot ship to you if we cannot read your address! Name :____________________________________________________ Firm :____________________________________________________ Street:____________________________________________________ City :____________________________________________________ State or Province:__________Zip/Postal Code:___________Country:_____________ Compuserve ID:__________________Internet address:___________________________ ## Cost ea. Total Network FORCE 1.1 ___ @ $49.00 $________ FDOC 1.01 ___ @ $24.00 $________ MKHDR/RED repository set ___ @ $24.00 $________ FDOC and MKHDR/RED together ___ @ $39.00 $________ NWF, FDOC, and MKHDR/RED together ___ @ $79.00 $________ Add Shipping/Handling ($8 domestic/$10 outside US) $_____ $________ Order total $________ Payment: Check or Money Order:___ Visa:___ MasterCard:___ Card Number:______________________Expiration date:_______ Signature:________________________ Sorry, purchase orders are not accepted. Software Evolution Corp. 21526 North Freeway Spring TX 77373 USA Fax: 713-350-9910 or 804-222-7570 Voice:713-288-8728 (ORDERS ONLY) Compuserve: GO FORCE (Msg section 5 / LIB 5) Addendum: ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ Call list for Network Force 1.1: ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ AbortServicingQueueJobAndFile Server cannot finish servicing a job. AddBinderyObjectToSet Adds a bindery object to a Set property. AddTrusteeToDirectory Adds a trustee to a given directory. AddUserToGroup Adds a User to a group. Attach Attaches to a server. AttachQueueServerToQueue Attaches a job server to a specified queue. BroadcastToConsole Send a message to the file server console. CancelCapture Stop a capture, removing any queued file. ChangeBinderyObjectPassword Changes the bindery object password. ChangeBinderyObjectSecurity Changes the Netware security of an Object. ChangePropertySecurity Changes the Netware security of a property. ChangeQueueJobEntry Change a job entry record. ChangeQueueJobPosition Changes a jobs position in a given queue. ChangeToClientRights Gives the job server the clients rights. CheckConsolePrivileges Is the caller is a console operator? ClearFile Unlock and remove a file from the log table. ClearFileSet Removes all file locks from the log table. ClearLogicalRecord Removes a logical Lock from the log table. ClearLogicalRecordSet Removes logical records from the log table. ClearPhysicalRecord Remove a physical record from the log table. ClearPhysicalRecordSet Removes physical records from the log table. CloseBindery Close the bindery. CloseJobFileAndStartQueueJob Marks a job file ready for service. CloseSemaphore Decrement a semaphore's open count. CreateBinderyObject Makes a new Bindery Object. CreateProperty Makes a new bindery object property. CreateQueue Creates a Job queue. CreateQueueJobAndFile Enter a new job into a queue. DeleteBinderyObject Removes an object from the bindery. DeleteBinderyObjectFromSet Removes a bindery object from a Set property. DeleteProperty Removes a property from an object. DeleteUserFromGroup Removes a user from a group. DestroyQueue Deletes a specified queue. Detach Detaches from a server. DetachQueueServerFromQueue Removes a job server from the active Servers. DisableFileServerLogin Prevent logins to the given file server. DisableTTS Disable the Transaction Tracking System. DownFS Shut the server down. EnableFileServerLogin Allow logins to the given file server. EnableTTS Enable the Transaction Tracking Service. EndCapture End a capture and allow a file to print. Eoj Sends an End Of Job signal to the server. ExamineSemaphore Gets the value and open count of a semaphore. FileServerFileCopy Copy a file on the same server. FinishServicingQueueJobAndFile Job Server signal to QMS on Completion. FlushCapture Sends a file to print, but does not End Capture. GcInfo Returns connection info for user. GetAccountStatus Returns Balance, Credit limit and holds. GetBinderyAccessLevel Returns the security of the calling object. GetBinderyObjectID Returns the object's bindery ID as a ULONG. GetBinderyObjectName Returns the Bindery Objects Login Name. GetBroadcastMessage Get a workstations message. GetBroadcastMode Returns the current workstation message mode. GetCaptureFlags Gets the capture flags for an LPT device. GetCaptureStatus Is capturing is in effect for an LPT device. GetConIDTable (internal) Retrieves the workstation connection ID table. GetConnectionByServer Returns the connection number and ID. GetConnectionInformation Returns Information about a Connection. GetConnectionNumber Returns the connection number. GetDefaultServerName Returns the name of the default server. GetDirectoryHandle Returns the directory handle of a drive. GetDirectoryPath Returns the path associated with a drive. GetDiskRestriction Returns the current users disk restriction. GetDiskUsage Gets the current users disk usage for a volume. GetDriveConnectionIDTable Returns an array of all drive handles. GetDriveFlagTable Returns an array of flags for all drives. GetEffectiveDirectoryRights Returns the trustee directory rights. GetFSNameTable (internal) Gets the workstations file server name table. GetFileServerDateAndTime What time does the server think it is? GetFileServerInformation Returns a lot of info for a given server. GetFileServerLoginStatus Check whether login is disabled or enabled. GetFileServerName Returns the server name for a given connection GetFullName Gets the users full name. GetInternetAddress Returns the workstations internet address. GetLockMode Returns the current lock mode. GetNumberofLocalDrives Returns the number of workstation local drives. GetNumberOfVolumes Gets the Number of Volumes for a Server. GetObjectConnectionNumbers Gets the connections for a bindery object. GetPreferredConnectionID Returns the current preferred server. GetPrimaryServerName Returns the name of the primary server. GetPrimaryConnectionID Returns the current Primary Server. GetQueueJobFileSize Returns the size of a Queue job. GetQueueJobList List all the jobs in a specified queue. GetStationAddress Returns the workstations network address. GetServerCount Returns the number of server atteched to. GetUserFullName Get a users full name. GetUserID Returns an Objects Bindery ID. GetUserName Returns an Objects Login Name. GetVolumeInfoWithHandle Returns Volume info given a directory handle. GetVolumeInfoWithNumber Returns Volume Info given a drive number. GetVolumeName Returns a volume's name given a volume number. GetVolumeNumber Returns a volumes number given it's name. GetWorkStationEnvironment Returns workstation operating system Info. IsAccountingInstalled Checks whether Accounting is Installed. IsBinderyObjectInSet Checks if a object is a member of a set. IsLogged Is the called logged in on ANY server? IsUserInGroup Checks for group membership. IsUserSuperEquiv Checks for Supervisor Equivalence. LockFileSet Attempts to lock all files in a log table. LockLogicalRecordSet Lock all logical records in a log table. LockPhysicalRecordSet Lock all physical records in a log table. LogFile Enters a file in the log table and locks it. LogLogicalRecord Enters a logical record into a log table. LogPhysicalRecord Enters a physical record into a log table. LoginToFileServer Logs in to a server. Logout Logs out from all servers. LogoutFromServer Logs out from a specified server. MapDrive Maps a network drive to a path MapRemove Removes a drive mapping. NWFInit Library Initialisation Function. OpenBindery Opens the bindery. OpenSemaphore Opens the specified semaphore or creates it. ReadPropertyValue Reads a 128-byte property segment. ReadQueueCurrentStatus Returns the current status of a queue. ReadQueueJobEntry Reads the information about a specified job. ReadQueueServerCurrentStatus Reads the current status of a job queue server. ReleaseFile Unlocks a file in the log table. ReleaseFileSet Unlocks all files in a log table. ReleaseLogicalRecord Unlocks a logical record in the log table. ReleaseLogicalRecordSet Unlocks all logical records in the log table. ReleasePhysicalRecord Unlocks a physical record in the log table. ReleasePhysicalRecordSet Unlocks all physical records in the log table. RemoveJobFromQueue Deletes a job from a given queue. RemoveTrusteeFromDirectory Removes a trustee from a given directory. RenameBinderyObject Changes the name of a bindery object. RestoreQueueServerRights Restores a job servers rights ScanObject Searches for a specified Object. ScanObjectTrusteePaths Gets an objects trustee paths on a volume. ScanProperty Scans an Object for a given property. SendBroadcastMessage Send message to a list of workstations. ServiceQueueJobandOpenFile Lets a Job server select a job for servicing. SetBroadcastMode Sets the workstations message mode. SetCaptureFlags Sets the capture flags for a given LPT device. SetDirectoryHandle Sets a directory handle to a particular path. SetEoj Selects End of Job Status. SetFileServerDateAndTime Tell a server the right time. SetLockMode Sets the locking mode for the current Session. SetNetwareErrorMode Sets the error mode for the application. SetPreferredConnectionID Sets the preferred server. SetPrimaryConnectionID Sets the primary server. SetPrintQueue Sets the current print queue. SetQueueCurrentStatus Allows a queue operator to restrict a queue. SetQueueServerCurrentStatus Updates the QMS copy of a job servers status. SignalSemaphore Increment the value of a given semaphore. StartCapture Starts a capture using the current settings. SubmitAccCharge Update the account of a Bindery Object. SubmitAccHold Reserves a amount of an object's account. SubmitAccNote Adds a note about an object to the audit file. TTSAbortTransaction Abort explicit and implicit transactions. TTSBeginTransaction Begin an explicit transaction. TTSEndTransaction End a transaction and return a ref. number. TTSGetApplicationThresholds Return the application limits for transactions. TTSGetWorkstationThresholds Return the workstation limits for transactions. TTSSetApplicationThresholds Set the number of locks the for the application. TTSSetWorkstationThresholds Set the number of locks for the workstation. TTSStatus Is TTS enabled or Disabled? TTSTransactionStatus Verifies whether a transaction has been written. VerifyObjectPassword Verifies a given bindery object's password. WaitOnSemaphore Decrements the specified semaphore value. WriteConIDTable (internal) Writes the workstations connection ID table. WriteFsNameTable (internal) Writes the workstations file server name table. WritePropertyValue Writes a new 128-byte property value.