home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / magazine / msysjour / ms / s12602 / readme < prev    next >
Text File  |  1990-05-17  |  3KB  |  72 lines

  1. The included archive contains a sample app that will demonstrate how
  2. to handle various DDE transactions with Microsoft Excel.
  3.  
  4.  
  5. It currently supports the following transactions:
  6.  
  7. 1.  Execute Excel commands from Welcome1
  8.  
  9.     First start a copy of Excel.
  10.  
  11.     Select the Connect menu in Welcome1 and enter
  12.  
  13.     Excel             -  for the app name
  14.     System            -  for the topic
  15.  
  16.     Then select Execute and RUN menu item and enter
  17.     [NEW()]           - or some other excel command
  18.  
  19.     [SELECT("R1C1:R5C1,R5C5")]   - an example of a selection
  20.                                    command in the current document
  21.  
  22. 2.  Spawn a copy of Excel and detect when Excel is ready to accept DDE
  23.     transactions.  HACK ALERT, see source.
  24.  
  25. 3.  Handle REQUEST() macro commands from Excel.  See source and macro2.xlm
  26.     sample macro sheet.
  27.  
  28. 4.  Handle EXECUTE() macro commands from Excel.  See source and macro2.xlm
  29.     sample macro sheet.
  30.  
  31.  
  32.  
  33.  
  34. NOTE.  The PMSHL.H file shipped with the 1.2 Toolkit and C 6.0 has a
  35. bug in it that makes it impossible to use use the PSWBLOCK structure.
  36. To correct this problem remove the following marked line from PMSHL.H
  37.  
  38. /****************************************************************************/
  39. /*                                        */
  40. /*  NOTE: string information is concatanated after the PROGDETAILS field    */
  41. /*      structure so you need to allocate storage greater than        */
  42. /*      sizeof(PROGDETAILS) to query programs                 */
  43. /*                                        */
  44. /*  PrfQueryDefinition recomended usage:                    */
  45. /*                                        */
  46. /*  bufferlen = PrfQueryDefinition(Hini, Hprog, (PPROGDETAILS) NULL, 0)     */
  47. /*                                        */
  48. /*  Alocate buffer of bufferlen bytes                        */
  49. /*  set Length field (0 will be supported)                    */
  50. /*                                        */
  51. /*  (PPROGDETAILS)pBuffer->Length=sizeof(PPROGDETAILS)                */
  52. /*                                        */
  53. /*  len = PrfQueryDefinition(Hini, Hprog, (PPROGDETAILS)pBuffer, bufferlen) */
  54. /*                                        */
  55. /****************************************************************************/
  56.  
  57. BOOL     APIENTRY PrfRemoveProgram(HINI hini, HPROGRAM hprog);
  58. ULONG     APIENTRY PrfQueryProgramHandle(HINI hini, PSZ pszExe,
  59.                     PHPROGARRAY phprogArray,
  60.                     ULONG cchBufferMax, PULONG pulCount);
  61. HPROGRAM APIENTRY PrfCreateGroup(HINI hini, PSZ pszTitle, UCHAR chVisibility);
  62. BOOL     APIENTRY PrfDestroyGroup(HINI hini, HPROGRAM hprogGroup);
  63. PROGCATEGORY APIENTRY PrfQueryProgramCategory(HINI hini, PSZ pszExe);
  64.  
  65. #endif /* INCL_WINPROGRAMLIST */
  66.  
  67. #if ((defined(INCL_WINSWITCHLIST) || !defined(INCL_NOCOMMON)) && !defined(INCL_WINSWITCHLIST_INCLUDED))
  68. ------->>>>>>>  // #define INCL_WINSWITCHLIST_INCLUDED   <<<<< ------------------------------------------------  remove this line     ***************
  69.  
  70. typedef LHANDLE HSWITCH;    /* hsw */
  71. typedef HSWITCH FAR *PHSWITCH;
  72.