The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My work

  • My badges

  • Twitter Updates

  • My Flickr Stream

    20140508-Delphi-2007--Project-Options--Cannot-Edit-Application-Title-HelpFile-Icon-Theming

    20140430-Fiddler-Filter-Actions-Button-Run-Filterset-now

    20140424-Windows-7-free-disk-space

    More Photos
  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,733 other followers

Archive for January 4th, 2017

Delphi Berlin version numbers: Release/Update1/Update2

Posted by jpluimers on 2017/01/04

Vendors should post these, but alas Embarcadero is not the only one failing here, so here are build/version numbers of the various Delphi Berlin releases until now:

Sébastien Paradis:

  • Berlin initial release -> 24.0.22858.6822

Horácio Filho:

  • Berlin Update 1 -> 24.0.24468.8770
  • Berlin Update 2 -> 24.0.25048.9432

Via: [WayBackHi everyone How to know wheter my installed Berlin instance includes update 2?. … G+

If you need the ISO images: Positive: Delphi 10.1 Berlin Update 2 is out – ISO links.

–jeroen

Posted in Delphi, Delphi 10.1 Berlin (BigBen), Development, Software Development | 1 Comment »

History on line: Client Access/400 API Planning Guide Document Number GG24-4422-00 October 1994

Posted by jpluimers on 2017/01/04

About 12 years ago, I did some Client Access/400 work. When cleaning up “the attic”, I bumped into a paper copy of the below manual. To my surprise that document is still available on-line: http://www.redbooks.ibm.com/redbooks/pdfs/gg244422.pdf

Client Access/400 API Planning Guide

Document Number GG24-4422-00 October 1994

International Technical Support Organization Rochester Center

Then there is ” This table lists the AS/400 Version 3, Release 7 books that are available in Portable Document Format (PDF).”: http://publib.boulder.ibm.com/html/as400/online/V3R7PDF.HTM which contains a link to SC41-3513-01 “AS/400 Client Access for Windows 95/NT API and Technical Reference V3” which I also used: http://publib.boulder.ibm.com/pubs/pdfs/as400/V3R7PDF/QBKACO01.PDF

These were (for me back then) the most important chapters of the first book:

12.2 Typical Usage of the API

An application using the Remote Command/Distributed Program Call function will make use of two objects. Each of these objects are identified to the application through a handle. The objects are:

  • System object – This represents the AS/400 system. Commands can be run and programs can be called on this object.
  • Program object – This represents the AS/400 program. Parameters can be added and the program sent to the system to run the program.

There is not a separate object for commands. The command string is sent directly to the system object.

Table 16 shows how these API functions would be typically used.

Table 16. Remote Command / Distributed Program Call – Typical Usage Examples

Action

Start the host server and program.

Create a program object.

Add parameter 1 (input) to the program object.

Add parameter 2 (input/output) to the program object.

Add parameter 3 (output) to the program object.

Call the program with parameters in the same order that they were added to the program object with the cwbRC_AddParameter() calls.

API Function Call an AS/400 program

cwbRC_StartSys(′′SYS01′′, &hSystemHandle)

cwbRC_CreatePgm(′′PROG01′′, ′′LIB01′′,

&hPgmHandle)

cwbRC_AddParm(hPgmHandle, CWBRC_INPUT ,

uParm1Length, pchBuffer1)

cwbRC_AddParm(hPgmHandle, CWBRC_INOUT,

uParm2Length, pchBuffer2)

cwbRC_AddParm(hPgmHandle, CWBRC_OUTPUT,

uParm3Length, pchBuffer3)

cwbRC_CallPgm(hSystemHandle, hPgmHandle,

&hMsgHandle)

Run a CL command on the AS/400

cwbRC_RunCmd(hSystemHandle, pszCommandString,

&hMsgHandle)

Clean up at the end

cwbRC_DeletePgm(hPgmHandle) cwbRC_StopSys(hSystemHandle)

Run a command.

Delete the program object.

Terminate the conversation with the AS/400 server.

12.3 Remote Command / Distributed Program Call API Functions

Table 17 lists the API functions. For a complete list with parameters see the Client Access/400 Optimized for OS/2 API and Technical Reference, SC41-3511.

Table 17. Remote Command / Distributed Program Call – List of API Functions

API Function

cwbRC_StartSys()

cwbRC_GetSysName()

cwbRC_StopSys()

cwbRC_RunCmd()

cwbRC_CreatePgm() cwbRC_AddParm()

cwbRC_CallPgm()

cwbRC_GetParmCount()

cwbRC_GetParm()

cwbRC_GetPgmName()

cwbRC_GetLibName()

cwbRC_DeletePgm()

Description Original API

Starts a conversation with the – specified system.

Gets the name of the system for this – conversation.

Stops the current conversation with EHNSRSTC() the AS/400 system.

Issues the command on the system EHNSRSBM() identified by the handle.

Creates a program object. –

Adds a parameter to the program – object identified by the handle.

Calls the program identified by the – handle.

Gets the number of parameters for – this program object.

Retrieves the parameter identified by – the index (index value for the first parameter is 1).

Gets the name of the program that – was used when creating this program object.

Gets the name of the library that was – used when creating this program
object.

Deletes the program object identified – by the supplied handle (the AS/400
program object is NOT deleted).

–jeroen

Posted in Development, History, Software Development | Leave a Comment »

Windows batch file – setting space as delimiter when parsing files

Posted by jpluimers on 2017/01/04

for /f "tokens=* delims= " %%f in (myfile) do

If you put delims as the last parameter, then an ending space will be included as delimiter (at the start or in the middle it won’t).

A great tip by jeb and Joey in an answer for windows – Batch file FOR /f tokens – Stack Overflow

–jeroen

Posted in Batch-Files, Pingback, Scripting, Software Development, Stackoverflow | Leave a Comment »

 
%d bloggers like this: