Changeset 170 for trunk/src


Ignore:
Timestamp:
Jun 24, 1999, 12:28:52 AM (26 years ago)
Author:
phaller
Message:

Add: ShellExecuteW, RealShellExecuteA, RealShellExecuteW, RealShellExecuteExA, RealShellExecuteExW

Location:
trunk/src/shell32
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/shell32/shell32.cpp

    r168 r170  
    1 /* $Id: shell32.cpp,v 1.6 1999-06-23 22:17:52 phaller Exp $ */
     1/* $Id: shell32.cpp,v 1.7 1999-06-23 22:28:52 phaller Exp $ */
    22
    33/*
     
    5454
    5555
    56 //******************************************************************************
    57 //******************************************************************************
     56/*****************************************************************************
     57 * Name      : HINSTANCE ShellExecuteA
     58 * Purpose   : Start a program
     59 * Parameters: HWND    hwnd
     60 *             LPCTSTR lpOperation
     61 *             LPCTSTR lpFile
     62 *             LPCTSTR lpParameters
     63 *             LPCTSTR lpDirectory
     64 *             INT     nShowCmd
     65 * Variables :
     66 * Result    :
     67 * Remark    :
     68 * Status    : UNTESTED
     69 *
     70 * Author    : Patrick Haller [Tue, 1999/06/01 09:00]
     71 *****************************************************************************/
     72
    5873HINSTANCE WIN32API ShellExecuteA(HWND    hwnd,
    5974                                 LPCTSTR lpOperation,
     
    7388  return(0); //out of memory
    7489}
    75 //******************************************************************************
    76 //TODO: Make nice dialog window
    77 //******************************************************************************
     90
     91
     92/*****************************************************************************
     93 * Name      : HINSTANCE ShellExecuteW
     94 * Purpose   : Start a program
     95 * Parameters: HWND    hwnd
     96 *             LPCWSTR lpOperation
     97 *             LPCWSTR lpFile
     98 *             LPCWSTR lpParameters
     99 *             LPCWSTR lpDirectory
     100 *             INT     nShowCmd
     101 * Variables :
     102 * Result    :
     103 * Remark    :
     104 * Status    : UNTESTED
     105 *
     106 * Author    : Patrick Haller [Tue, 1999/06/01 09:00]
     107 *****************************************************************************/
     108
     109HINSTANCE WIN32API ShellExecuteW(HWND    hwnd,
     110                                 LPCWSTR lpOperation,
     111                                 LPCWSTR lpFile,
     112                                 LPCWSTR lpParameters,
     113                                 LPCWSTR lpDirectory,
     114                                 INT     nShowCmd)
     115{
     116  HINSTANCE hInstance;
     117  LPSTR     lpOperationA  = UnicodeToAsciiString((LPWSTR)lpOperation);
     118  LPSTR     lpFileA       = UnicodeToAsciiString((LPWSTR)lpFile);
     119  LPSTR     lpParametersA = UnicodeToAsciiString((LPWSTR)lpParameters);
     120  LPSTR     lpDirectoryA  = UnicodeToAsciiString((LPWSTR)lpDirectory);
     121
     122  dprintf (("SHELL32: ShellExecuteW(%08xh,%s,%s,%s,%s,%08xh).\n",
     123            hwnd,
     124            lpOperationA,
     125            lpFileA,
     126            lpParametersA,
     127            lpDirectoryA,
     128            nShowCmd));
     129
     130  hInstance = ShellExecuteA(hwnd,
     131                            lpOperationA,
     132                            lpFileA,
     133                            lpParametersA,
     134                            lpDirectoryA,
     135                            nShowCmd);
     136
     137  FreeAsciiString(lpOperationA);
     138  FreeAsciiString(lpFileA);
     139  FreeAsciiString(lpParametersA);
     140  FreeAsciiString(lpDirectoryA);
     141
     142  return hInstance;
     143}
     144
     145
     146
     147/*****************************************************************************
     148 * Name      : DWORD ShellAboutA
     149 * Purpose   : display a simple about box
     150 * Parameters: HWND   hwnd
     151 *             LPSTR  szApplication
     152 *             LPSTR  szMoreInformation
     153 *             HICON  hIcon
     154 * Variables :
     155 * Result    :
     156 * Remark    :
     157 * Status    : UNTESTED
     158 *
     159 * Author    : Patrick Haller [Tue, 1999/06/01 09:00]
     160 *****************************************************************************/
     161
    78162int WIN32API ShellAboutA(HWND    hwnd,
    79163                         LPCTSTR szApp,
  • trunk/src/shell32/shell32.def

    r168 r170  
    1 ; $Id: shell32.def,v 1.6 1999-06-23 22:17:52 phaller Exp $
     1; $Id: shell32.def,v 1.7 1999-06-23 22:28:52 phaller Exp $
    22
    33;Created by BLAST for IBM's compiler
     
    8787;   OpenAs_RunDLL              = _OpenAs_RunDLL@?                   @189
    8888;   PrintersGetCommand_RunDLL  = _PrintersGetCommand_RunDLL@?       @190
    89 ;   RealShellExecuteA          = _RealShellExecuteA@?               @191
    90 ;   RealShellExecuteExA        = _RealShellExecuteExA@?             @192
     89    RealShellExecuteA          = _RealShellExecuteA@24              @191
     90    RealShellExecuteExA        = _RealShellExecuteExA@4             @192
    9191                                 _SHELL32_195@4                     @195
    9292                                 _SHELL32_196@4                     @196
    93 ;   RealShellExecuteExW        = _RealShellExecuteExW@?             @201
    94 ;   RealShellExecuteW          = _RealShellExecuteW@?               @202
     93    RealShellExecuteExW        = _RealShellExecuteExW@4             @201
     94    RealShellExecuteW          = _RealShellExecuteW@24              @202
    9595;   RegenerateUserEnvironment  = _RegenerateUserEnvironment@?       @203
    9696    SHAddToRecentDocs          = _SHAddToRecentDocs@8               @204
     
    139139    ShellExecuteExA            = _ShellExecuteExA@4                 @245
    140140    ShellExecuteExW            = _ShellExecuteExW@4                        ; NT4 doesn't use it!
    141 ;   ShellExecuteW              = _ShellExecuteW@24                  @246
     141    ShellExecuteW              = _ShellExecuteW@24                  @246
    142142    ShellExecute               = _ShellExecuteA@24                         ; NT4 doesn't use it!
    143143    Shell_NotifyIcon           = _Shell_NotifyIconA@8               @247
  • trunk/src/shell32/unknown.cpp

    r169 r170  
    1 /* $Id: unknown.cpp,v 1.1 1999-06-23 22:19:05 phaller Exp $ */
     1/* $Id: unknown.cpp,v 1.2 1999-06-23 22:28:52 phaller Exp $ */
    22
    33/*
     
    1010 * Includes                                                                  *
    1111 *****************************************************************************/
     12
    1213#include <os2win.h>
     14#include <shellapi.h>
     15#include <winreg.h>
     16#include "shell32.h"
     17
    1318
    1419/*****************************************************************************
     
    2631
    2732/*****************************************************************************
    28  * Name      :
    29  * Purpose   : Unknown, undocumented Win32 API
     33 * Name      : HINSTANCE RealShellExecuteA
     34 * Purpose   : Start a program
     35 * Parameters: HWND    hwnd
     36 *             LPCTSTR lpOperation
     37 *             LPCTSTR lpFile
     38 *             LPCTSTR lpParameters
     39 *             LPCTSTR lpDirectory
     40 *             INT     nShowCmd
     41 * Variables :
     42 * Result    :
     43 * Remark    :
     44 * Status    : UNTESTED UNKNOWN
     45 *
     46 * Author    : Patrick Haller [Tue, 1999/06/01 09:00]
     47 *****************************************************************************/
     48
     49HINSTANCE WIN32API RealShellExecuteA(HWND    hwnd,
     50                                     LPCTSTR lpOperation,
     51                                     LPCTSTR lpFile,
     52                                     LPCTSTR lpParameters,
     53                                     LPCTSTR lpDirectory,
     54                                     INT     nShowCmd)
     55{
     56  dprintf (("SHELL32: RealShellExecuteA(%08xh,%s,%s,%s,%s,%08xh) not implemented.\n",
     57            hwnd,
     58            lpOperation,
     59            lpFile,
     60            lpParameters,
     61            lpDirectory,
     62            nShowCmd));
     63
     64  return(0); //out of memory
     65}
     66
     67
     68/*****************************************************************************
     69 * Name      : HINSTANCE RealShellExecuteW
     70 * Purpose   : Start a program
     71 * Parameters: HWND    hwnd
     72 *             LPCWSTR lpOperation
     73 *             LPCWSTR lpFile
     74 *             LPCWSTR lpParameters
     75 *             LPCWSTR lpDirectory
     76 *             INT     nShowCmd
     77 * Variables :
     78 * Result    :
     79 * Remark    :
     80 * Status    : UNTESTED UNKNOWN
     81 *
     82 * Author    : Patrick Haller [Tue, 1999/06/01 09:00]
     83 *****************************************************************************/
     84
     85HINSTANCE WIN32API RealShellExecuteW(HWND    hwnd,
     86                                     LPCWSTR lpOperation,
     87                                     LPCWSTR lpFile,
     88                                     LPCWSTR lpParameters,
     89                                     LPCWSTR lpDirectory,
     90                                     INT     nShowCmd)
     91{
     92  HINSTANCE hInstance;
     93  LPSTR     lpOperationA  = UnicodeToAsciiString((LPWSTR)lpOperation);
     94  LPSTR     lpFileA       = UnicodeToAsciiString((LPWSTR)lpFile);
     95  LPSTR     lpParametersA = UnicodeToAsciiString((LPWSTR)lpParameters);
     96  LPSTR     lpDirectoryA  = UnicodeToAsciiString((LPWSTR)lpDirectory);
     97
     98  dprintf (("SHELL32: RealShellExecuteW(%08xh,%s,%s,%s,%s,%08xh).\n",
     99            hwnd,
     100            lpOperationA,
     101            lpFileA,
     102            lpParametersA,
     103            lpDirectoryA,
     104            nShowCmd));
     105
     106  hInstance = RealShellExecuteA(hwnd,
     107                                lpOperationA,
     108                                lpFileA,
     109                                lpParametersA,
     110                                lpDirectoryA,
     111                                nShowCmd);
     112
     113  FreeAsciiString(lpOperationA);
     114  FreeAsciiString(lpFileA);
     115  FreeAsciiString(lpParametersA);
     116  FreeAsciiString(lpDirectoryA);
     117
     118  return hInstance;
     119}
     120
     121
     122/*****************************************************************************
     123 * Name      : BOOL RealShellExecuteExA
     124 * Purpose   :
    30125 * Parameters:
    31126 * Variables :
    32127 * Result    :
    33128 * Remark    :
    34  * Status    : UNTESTED STUB, UNKNOWN PARAMETERS
     129 * Status    : UNTESTED STUB UNKNOWN
    35130 *
    36  * Author    : Patrick Haller [1999/06/21 20:01]
     131 * Author    : Patrick Haller [Tue, 1998/06/15 03:00]
    37132 *****************************************************************************/
    38133
     134BOOL WIN32API RealShellExecuteExA(LPSHELLEXECUTEINFOA lpExecInfo)
     135{
     136  dprintf(("SHELL32: RealShellExecuteExA (%08xh) not implemented.\n",
     137           lpExecInfo));
     138
     139  return (0);
     140}
     141
     142
     143/*****************************************************************************
     144 * Name      : BOOL RealShellExecuteExW
     145 * Purpose   :
     146 * Parameters:
     147 * Variables :
     148 * Result    :
     149 * Remark    :
     150 * Status    : UNTESTED STUB UNKNOWN
     151 *
     152 * Author    : Patrick Haller [Tue, 1998/06/15 03:00]
     153 *****************************************************************************/
     154
     155BOOL WIN32API RealShellExecuteExW(LPSHELLEXECUTEINFOW lpExecInfo)
     156{
     157  dprintf(("SHELL32: RealShellExecuteExW (%08xh) not implemented.\n",
     158           lpExecInfo));
     159
     160  return (0);
     161}
     162
Note: See TracChangeset for help on using the changeset viewer.