|
|
(28 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
− | <u>Editor's note</u>: The RPC broker development kit (BDK) comes with a Broker.hlp file that contains valuable information. However it seems to be Win95 technology, and doesn't work with newer versions of Windows Help. I found a [http://download.cnet.com/Help-Explorer-Viewer/3000-6675_4-10666661.html program] that helped me get to the content. | + | <u>Editor's note</u>: The RPC broker development kit (BDK) comes with a Broker.hlp file that contains valuable information. However it seems to be WinXP technology, and doesn't work with newer versions of Windows Help. I found a program named [http://download.cnet.com/Help-Explorer-Viewer/3000-6675_4-10666661.html Help Explorer Viewer] that helped me get to the content. I found this help file to be very helpful and worth the study. -- Kevin Toppenberg, MD (July 2015) |
| | | |
| + | Correction: I have found that an updated version of the help files can be downloaded [http://www.va.gov/vdl/application.asp?appid=23 here]. '''Broker_1_1.chm''' DOES appear to work in Window 7. |
| + | |
| + | The BDK files can be downloaded from [http://foia-vista.osehra.org/Patches_By_Application/XWB-RPC%20BROKER/ here]: Look for one of the .ZIP files. |
| <HR> | | <HR> |
| | | |
| <H1>RPC Broker V 1.1 Developer's Guide</H1> | | <H1>RPC Broker V 1.1 Developer's Guide</H1> |
| | | |
− | * <h2>Overview</h2>
| + | <h3>[[RPC_HELP_Overview_List|Overview]]</h3> |
− | ** [[RPC_HELP_Contents|Contents]]
| + | <h3>[[RPC_HELP_Broker_Components_Class_and_Units|RPC Broker Components, Class, and Units]]</h3> |
− | ** [[RPC_HELP_Introduction|Introduction]]
| + | <h3>[[RPC_HELP_Remote_Procedure_Calls_List|Remote Procedure Calls]]</h3> |
− | ** [[RPC_HELP_Broker_Overview|Broker Overview]]
| + | <h3>[[RPC_HELP_Other_RPC_Broker_APIs_list|Other RPC Broker APIs]]</h3> |
− | ** [[RPC_HELP_Orientation|Orientation]]
| + | <h3>[[RPC_HELP_Debugging_and_Troubleshooting_List|Debugging and Troubleshooting]]</h3> |
− | ** [[RPC_HELP_About|About this Version of the RPC Broker]]
| + | <h3>[[RPC_HELP_TRPCBroker_Broker_Programmer_Preferences_Editor|Broker Programmer Preferences Editor]]</h3> |
− | ** [[RPC_HELP_Whats_New |What's New in the BDK]]
| + | <h3>[[RPC_HELP_Other_DLL_Interface_List|DLL Interface]]</h3> |
− | ** [[RPC_HELP_Dev_Considerations|Developer Considerations]]
| + | <h3>Tutorial</h3> |
− | ** [[RPC_HELP_App_Issues|Application Issues]]
| + | * [[RPC_HELP_Tutorial_Introduction|Introduction]] |
− | ** [[RPC_HELP_Silent_Login|Silent Login]]
| + | * [[RPC_HELP_Tutorial_Advanced_Preparation|Advanced Preparation]] |
− | ** [[RPC_HELP_Context-sensitive_Help|Context-sensitive Help for the RPC Broker]]
| + | * [[RPC_HELP_Tutorial_Step_1|Step 1: Create Application with an RPC Broker Component]] |
− | | + | * [[RPC_HELP_Tutorial_Step_2|Step 2: Get Server/Port]] |
− | * <h2>RPC Broker Components, Class, and Units</h2>
| + | * [[RPC_HELP_Tutorial_Step_3|Step 3: Establish Broker Connection]] |
− | ** <h3>Classes</h3>
| + | * [[RPC_HELP_Tutorial_Step_4|Step 4: RPC Routine to List Terminal Types]] |
− | *** [[RPC_HELP_TMult|TMult]]
| + | * [[RPC_HELP_Tutorial_Step_5|Step 5: RPC To List Terminal Types]] |
− | *** [[RPC_HELP_TParamRecord|TParamRecord]]
| + | * [[RPC_HELP_Tutorial_Step_6|Step 6: Call the ZxxxTT LIST RPC]] |
− | *** [[RPC_HELP_TParams|TParams]]
| + | * [[RPC_HELP_Tutorial_Step_7|Step 7: Associate IENs]] |
− | *** [[RPC_HELP_TVistaLogin|TVistaLogin]]
| + | * [[RPC_HELP_Tutorial_Step_8|Step 8: Routine to Retrieve Terminal Types]] |
− | *** [[RPC_HELP_TVistaUser|TVistaUser]]
| + | * [[RPC_HELP_Tutorial_Step_9|Step 9: RPC To Retrieve Terminal Types]] |
− | *** [[RPC_HELP_TXWBWinsock|TXWBWinsock]]
| + | * [[RPC_HELP_Tutorial_Step_10|Step 10: Call ZxxxRETRIEVE RPC]] |
− | ** <h3>Components</h3>
| + | * [[RPC_HELP_Tutorial_Step_11|Step 11: Register RPCs]] |
− | *** [[RPC_HELP_TCCOWRPCBroker|TCCOWRPCBroker]]
| + | * [[RPC_HELP_Tutorial_See_Also|See Also: FileMan Delphi Components (FMDC)]] |
− | *** [[RPC_HELP_TRPCBroker|TRPCBroker]]
| + | * [[RPC_HELP_Tutorial_Tutorial_Source_Code|Tutorial Source Code]] |
− | *** [[RPC_HELP_TSharedBroker|TSharedBroker]]
| |
− | *** [[RPC_HELP_TSharedRPCBroker|TSharedRPCBroker]]
| |
− | *** [[RPC_HELP_TXWBRichEdit|TXWBRichEdit]]
| |
− | ** <h3>Units</h3>
| |
− | *** [[RPC_HELP_Hash|Hash]]
| |
− | *** [[RPC_HELP_LoginFrm|LoginFrm]]
| |
− | *** [[RPC_HELP_MFunStr|MFunStr]]
| |
− | *** [[RPC_HELP_RPCConf1|RPCConf1]]
| |
− | *** [[RPC_HELP_RpcSLogin|RpcSLogin]]
| |
− | *** [[RPC_HELP_SplVista|SplVista]]
| |
− | *** [[RPC_HELP_TRPCB_Unit|TRPCB]]
| |
− | *** [[RPC_HELP_TVCEdit|TVCEdit]]
| |
− | *** [[RPC_HELP_EBrokerError_Exception|EBrokerError Exception]]
| |
− | | |
− | * <h2>Remote Procedure Calls</h2>
| |
− | ** <h3>M Entry Point for an RPC</h3>
| |
− | *** [[RPC_HELP_M_Entry_Relationship|Relationship Between an M Entry Point and an RPC]]
| |
− | *** [[RPC_HELP_M_Entry_First_Input_Param|First Input Parameter]]
| |
− | *** [[RPC_HELP_BROKER_RETURN_VALUE_TYPES|Return Value Types]]
| |
− | *** [[RPC_HELP_M_Entry_Input_Parameters|Input Parameters]]
| |
− | *** [[RPC_HELP_M_Entry_Examples|Examples]]
| |
− | ** <h3>RPC Entry in the Remote Procedure File</h3>
| |
− | *** [[RPC_HELP_M_Entry_In_RP_File|RPC Entry in the Remote Procedure File]]
| |
− | *** [[RPC_HELP_M_Entry_In_RP_File_RPC_Version|RPC Version in the Remote Procedure File]]
| |
− | *** [[RPC_HELP_M_Entry_In_RP_File_Blocking_RPC|Blocking an RPC in the Remote Procedure File]]
| |
− | *** [[RPC_HELP_M_Entry_In_RP_File_Cleaning|Cleaning after RPC Execution]]
| |
− | *** [[RPC_HELP_M_Entry_In_RP_File_Documenting|Documenting RPCs]]
| |
− | ** <h3>Executing RPCs from Clients</h3>
| |
− | *** [[RPC_HELP_Executing_RPC_How_to|How to Execute an RPC from a Client]]
| |
− | *** [[RPC_HELP_Executing_RPC_Security_Register|RPC Security: How to Register an RPC]]
| |
− | *** [[RPC_HELP_Executing_RPC_RPC_Limits|RPC Limits]]
| |
− | *** [[RPC_HELP_Executing_RPC_Online_Example|BrokerExample Online code Example]]
| |
− | ** <h3>Overview</h3>
| |
− | *** [[RPC_HELP_RPCs|Overview]]
| |
− | ** <h3>What Makes a Good RPC?</h3>
| |
− | *** [[RPC_HELP_RPCs_Good|What Makes a Good RPC?]]
| |
− | ** <h3>Creating RPCs</h3>
| |
− | *** [[RPC_HELP_RPCs_Creating|Creating RPCs]]
| |
− | ** <h3>Using an Existing M API</h3>
| |
− | *** [[RPC_HELP_RPCs_Existing_API|Using an Existing M API]]
| |
− | | |
− | * <h2>Other RPC Broker APIs</h2>
| |
− | ** <h3>Running RPCs on a Remote Server</h3>
| |
− | *** Options for Running RPCs on a Remote Server
| |
− | *** Checking RPC Availability on a Remote Server
| |
− | *** XWB DIRECT RPC
| |
− | *** XWB REMOTE RPC
| |
− | *** XWB REMOTE STATUS CHECK
| |
− | *** XWB REMOTE GETDATA
| |
− | *** XWB REMOTE CLEAR
| |
− | ** <h3>Deferred RPCs</h3>
| |
− | *** Overview of Deferred RPCs
| |
− | *** XWB DEFERRED RPC
| |
− | *** XWB DEFERRED STATUS
| |
− | *** XWB DEFERRED GETDATA
| |
− | *** XWB DEFERRED CLEAR
| |
− | *** XWB DEFERRED CLEARALL
| |
− | ** Overview
| |
− | ** Encryption Functions
| |
− | ** GetServerInfo Function
| |
− | ** M Emulation Functions
| |
− | ** VistA Splash Screen Procedures
| |
− | ** [[RPC_HELP_BROKER_XWBLIB|$$BROKER^XWBLIB]]
| |
− | ** [[RPC_HELP_BROKER_RTRNFMT_XWBLIB|$$RTRNFMT^XWBLIB]]
| |
− | ** XWB ARE RPCS AVAILABLE
| |
− | ** XWB IS RPC AVAILABLE
| |
− | ** XWB GET VARIABLE VALUE RPC
| |
− | | |
− | | |
− | * <h2>Debugging and Troubleshooting</h2>
| |
− | ** Overview
| |
− | ** How to Debug Your Application
| |
− | ** RPC Error Trapping
| |
− | ** Identifying the Listener Process on the Server
| |
− | ** Identifying the Handler Process on the Server
| |
− | ** Testing Your RPC Broker Connection
| |
− | ** Client Timeout and Buffer Clearing
| |
− | ** Memory Leaks
| |
− | | |
− | | |
− | * <h2>Developer Utilities</h2>
| |
− | ** RPC Broker Programmer Preferences
| |
− | | |
− | * <h2>Tutorial</h2>
| |
− | ** [[RPC_HELP_Tutorial_Introduction|Introduction]]
| |
− | ** [[RPC_HELP_Tutorial_Advanced_Preparation|Advanced Preparation]]
| |
− | ** [[RPC_HELP_Tutorial_Step_1|Step 1: Create Application with an RPC Broker Component]]
| |
− | ** [[RPC_HELP_Tutorial_Step_2|Step 2: Get Server/Port]]
| |
− | ** [[RPC_HELP_Tutorial_Step_3|Step 3: Establish Broker Connection]]
| |
− | ** [[RPC_HELP_Tutorial_Step_4|Step 4: RPC Routine to List Terminal Types]]
| |
− | ** [[RPC_HELP_Tutorial_Step_5|Step 5: RPC To List Terminal Types]]
| |
− | ** [[RPC_HELP_Tutorial_Step_6|Step 6: Call the ZxxxTT LIST RPC]]
| |
− | ** [[RPC_HELP_Tutorial_Step_7|Step 7: Associate IENs]]
| |
− | ** [[RPC_HELP_Tutorial_Step_8|Step 8: Routine to Retrieve Terminal Types]]
| |
− | ** [[RPC_HELP_Tutorial_Step_9|Step 9: RPC To Retrieve Terminal Types]]
| |
− | ** [[RPC_HELP_Tutorial_Step_10|Step 10: Call ZxxxRETRIEVE RPC]]
| |
− | ** [[RPC_HELP_Tutorial_Step_11|Step 11: Register RPCs]]
| |
− | ** [[RPC_HELP_Tutorial_See_Also|See Also: FileMan Delphi Components (FMDC)]]
| |
− | ** [[RPC_HELP_Tutorial_Tutorial_Source_Code|Tutorial Source Code]]
| |
− | | |
− | * <h2>DLL Interface</h2>
| |
− | ** <h3>DLL Special Issues</h3>
| |
− | *** RPC Results for DLL Calls
| |
− | *** GetServerInfo Function and the DLL Calls
| |
− | ** <h3>DLL Exported Functions</h3>
| |
− | *** RPCBCall
| |
− | *** RPCBCreate
| |
− | *** RPCBCreateContext
| |
− | *** RPCBFree
| |
− | *** RPCBMultItemGet
| |
− | *** RPCBMultPropGet
| |
− | *** RPCBMultSet
| |
− | *** RPCBMultSortedSet
| |
− | *** RPCBParamGet
| |
− | *** RPCBPropGet
| |
− | *** RPCBPropSet
| |
− | ** <h3>Guidelines for C++</h3>
| |
− | *** Overview
| |
− | *** TRPCBroker C++ Class Methods
| |
− | *** Initialize the Class
| |
− | *** Creat Broker Instances
| |
− | *** Connect to the Server
| |
− | *** Execute RPCs
| |
− | *** Destroy Broker Instances
| |
− | ** <h3>Gidelines for C</h3>
| |
− | *** Overview
| |
− | *** Initialize--LoadLibrary and GetProcAddress
| |
− | *** Create Broker Components
| |
− | *** Connect to the Server
| |
− | *** Execute RPCs
| |
− | *** Destroy Broker Components
| |
− | ** <h3>Guidelines for Visual Basic</h3>
| |
− | *** Overview
| |
− | *** Initialize
| |
− | *** Create Broker Components
| |
− | *** Connect to the Server
| |
− | *** Execute RPCs
| |
− | *** Destroy Broker Compoents
| |
− | ** Introduction
| |
Correction: I have found that an updated version of the help files can be downloaded here. Broker_1_1.chm DOES appear to work in Window 7.