Annotation of mstools/mssetup/include/setupapi.h, revision 1.1.1.1

1.1       root        1: #ifdef WIN16
                      2: typedef int  INT;
                      3: typedef char CHAR;
                      4: #define APIENTRY       FAR PASCAL
                      5: #endif
                      6: 
                      7: extern INT   hSetup;
                      8: 
                      9: 
                     10: #define cmoVital         1
                     11: #define cmoCopy          2
                     12: #define cmoUndo          4
                     13: #define cmoRoot          8
                     14: #define cmoDecompress    16
                     15: #define cmoTimeStamp     32
                     16: #define cmoReadOnly      64
                     17: #define cmoBackup        128
                     18: #define cmoForce         256
                     19: #define cmoRemove        512
                     20: #define cmoOverwrite     1024
                     21: #define cmoAppend        2048
                     22: #define cmoPrepend       4096
                     23: #define cmoNone          0
                     24: #define cmoAll           65535
                     25: 
                     26: #define femExists        0
                     27: #define femRead          1
                     28: #define femWrite         2
                     29: #define femReadWrite     3
                     30: 
                     31: #define ynrcNo           0
                     32: #define ynrcYes          1
                     33: #define ynrcErr1         2
                     34: #define ynrcErr2         3
                     35: #define ynrcErr3         4
                     36: #define ynrcErr4         5
                     37: #define ynrcErr5         6
                     38: #define ynrcErr6         7
                     39: #define ynrcErr7         8
                     40: #define ynrcErr8         9
                     41: #define ynrcErr9         10
                     42: 
                     43: #define grcOkay          0
                     44: #define grcNotOkay       1
                     45: #define grcUserQuit      48
                     46: 
                     47: #define cbSymValMax  8192
                     48: 
                     49: #define STFERR       1024
                     50: #define STFQUIT      1025
                     51: 
                     52: #define scmOff       0
                     53: #define scmOnIgnore  1
                     54: #define scmOnFatal   2
                     55: 
                     56: 
                     57: // common
                     58: 
                     59: extern INT   APIENTRY FOpenInf(LPSTR szFile, INT fCheck, INT fCheckSyms);
                     60: extern INT   APIENTRY FSetSilent(INT mode);
                     61: extern INT   APIENTRY FSetBeepingMode(INT mode);
                     62: extern INT   APIENTRY HShowWaitCursor(VOID);
                     63: extern INT   APIENTRY FRestoreCursor(INT hPrev);
                     64: extern INT   APIENTRY FOpenLogFile(LPSTR szFile, INT fAppend);
                     65: extern INT   APIENTRY FCloseLogFile(VOID);
                     66: extern INT   APIENTRY FWriteToLogFile(LPSTR sz, INT fRequire);
                     67: extern INT   APIENTRY CbGetInfSectionKeyField(LPSTR szSect, LPSTR szKey,
                     68:                                INT iField, LPSTR szBuf, INT cbBuf);
                     69: extern INT   APIENTRY FMakeListInfSectionField(LPSTR szSym, LPSTR szSect,
                     70:                                INT iField);
                     71: extern INT   APIENTRY DoMsgBox(LPSTR lpText, LPSTR lpCaption, INT wType);
                     72: 
                     73: #ifdef WIN16
                     74: extern INT   APIENTRY FValidFATDir(LPSTR szDir);
                     75: extern INT   APIENTRY CchlFATValidSubPath(LPSTR szPath);
                     76: extern INT   APIENTRY FValidFATPath(LPSTR szPath);
                     77: extern INT   APIENTRY FMakeFATPathFromDirAndSubPath(LPSTR szDir,
                     78:                                LPSTR szSubPath, LPSTR szBuf, INT cchpBufMax);
                     79: extern INT   APIENTRY FParseFATPathIntoPieces(LPSTR szPath, LPSTR szVol,
                     80:                                INT cbVol, LPSTR szDir, INT cbDir, LPSTR szFile, INT cbFile);
                     81: #elif defined(WIN32)
                     82: extern BOOL    APIENTRY FValidDir(LPSTR szDir);
                     83: extern unsigned        APIENTRY CchlValidSubPath(LPSTR szSubPath);
                     84: extern BOOL    APIENTRY FValidPath(LPSTR szPath);
                     85: extern BOOL    APIENTRY FMakePathFromDirAndSubPath(LPSTR szDir, LPSTR szSubPath,
                     86:                                        LPSTR szBuffer, unsigned cchpBufMax);
                     87: extern BOOL    APIENTRY FParsePathIntoPieces(LPSTR szPath, LPSTR szBufVol, unsigned cchpBufVolMax,  
                     88:             LPSTR szBufPath, unsigned cchpBufPathMax, LPSTR szBufFile, unsigned cchpBufFileMax);
                     89: 
                     90: #endif
                     91: 
                     92: 
                     93: //shell
                     94: 
                     95: extern INT   APIENTRY FSetBitmap(LPSTR szDll, INT Bitmap);
                     96: extern INT   APIENTRY FSetAbout(LPSTR sz1, LPSTR sz2);
                     97: extern INT   APIENTRY FDoDialogExt(HWND hwnd, LPSTR szDll, INT Dlg,
                     98:                                LPSTR szDlgProc, LPSTR szHelpDll, INT HelpDlg,
                     99:                                LPSTR szHelpProc);
                    100: extern INT   APIENTRY FKillNDialogs(INT n);
                    101: extern INT   APIENTRY FSetSymbolValue(LPSTR szSymbol, LPSTR szValue);
                    102: extern INT   APIENTRY FRemoveSymbol(LPSTR szSym);
                    103: extern INT   APIENTRY CbGetSymbolValue(LPSTR szSymbol, LPSTR szValue,
                    104:                                INT Length);
                    105: extern INT   APIENTRY UsGetListLength(LPSTR szSymbol);
                    106: extern INT   APIENTRY CbGetListItem(LPSTR szListSymbol, INT n,
                    107:                                LPSTR szListItem, INT cbMax);
                    108: extern INT   APIENTRY FAddListItem(LPSTR szListSymbol, LPSTR szListItem);
                    109: extern INT   APIENTRY FReplaceListItem(LPSTR szListSymbol, INT n,
                    110:                                LPSTR szListItem);
                    111: extern INT   APIENTRY FSetSymbolToListOfInfKeys(LPSTR szSym, LPSTR szSect,
                    112:                                INT fNulls);
                    113: 
                    114: #if defined(WIN16)
                    115: extern INT   APIENTRY InitializeFrame(LPSTR szCmdLine);
                    116: extern INT   APIENTRY HwndFrame(VOID);
                    117: extern INT   APIENTRY HinstFrame(VOID);
                    118: #elif defined(WIN32)
                    119: extern INT     APIENTRY InitializeFrame(LPSTR szCmdLine);
                    120: extern HWND    APIENTRY HwndFrame(VOID);
                    121: extern HANDLE  APIENTRY HinstFrame(VOID);
                    122: #endif
                    123: extern VOID  APIENTRY TerminateFrame(VOID);
                    124: 
                    125: //
                    126: //install
                    127: //
                    128: extern VOID  APIENTRY ProSetPos(INT x, INT y);
                    129: extern INT   APIENTRY FCreateDir(LPSTR szDir, INT cmo);
                    130: extern INT   APIENTRY FRemoveDir(LPSTR szDir, INT cmo);
                    131: extern INT   APIENTRY FAddSectionFilesToCopyList(LPSTR szSect, LPSTR szSrc,
                    132:                                LPSTR szDest);
                    133: extern INT   APIENTRY FAddSectionKeyFileToCopyList(LPSTR szSect, LPSTR szKey,
                    134:                                LPSTR szSrc, LPSTR szDest);
                    135: extern INT   APIENTRY FAddSpecialFileToCopyList(LPSTR szSect, LPSTR szKey,
                    136:                                LPSTR szSrc, LPSTR szDest);
                    137: extern INT   APIENTRY GrcCopyFilesInCopyList(HANDLE hInstance);
                    138: extern INT   APIENTRY FRemoveIniSection(LPSTR szFile, LPSTR szSect, INT cmo);
                    139: extern INT   APIENTRY FCreateIniKeyValue(LPSTR szFile, LPSTR szSect,
                    140:                                LPSTR szKey, LPSTR szValue, INT cmo);
                    141: extern INT   APIENTRY FRemoveIniKey(LPSTR szFile, LPSTR szSect, LPSTR szKey,
                    142:                                INT cmo);
                    143: extern INT   APIENTRY FCreateSysIniKeyValue(LPSTR szFile, LPSTR szSect,
                    144:                                LPSTR szKey, LPSTR szValue, INT cmo);
                    145: 
                    146: extern INT   APIENTRY FCreateProgManGroup(LPSTR szGroup, LPSTR szPath,
                    147:                                INT cmo);
                    148: extern INT   APIENTRY FCreateProgManItem(LPSTR szGroup, LPSTR szItem,
                    149:                                LPSTR szCmd, INT cmo);
                    150: 
                    151: #ifdef WIN32
                    152: extern INT   APIENTRY   FCreateProgManGroupEx(LPSTR szGroup, BOOL fCommon, INT cmo);
                    153: extern INT   APIENTRY   FCreateProgManItemEx(LPSTR szGroup, BOOL fCommon, LPSTR szItem,
                    154:                                LPSTR szCmd, INT cmo);
                    155: #endif
                    156: 
                    157: extern INT   APIENTRY FStampResource(LPSTR szSect, LPSTR szKey, LPSTR szDst,
                    158:                                INT wResType, INT wResId, LPSTR szData, INT cbData);
                    159: extern INT   APIENTRY FDumpCopyListToFile(LPSTR szFile);
                    160: extern VOID  APIENTRY ResetCopyList(VOID);
                    161: extern LONG  APIENTRY LcbGetCopyListCost(LPSTR szExtraList, LPSTR szCostList,
                    162:                                LPSTR szNeedList);
                    163: extern INT   APIENTRY FAddDos5Help(LPSTR szProgName, LPSTR szProgHelp,
                    164:                                INT cmo);
                    165: extern INT   APIENTRY FCopyOneFile(LPSTR szSrc, LPSTR szDest, INT cmo,
                    166:                                INT fAppend);
                    167: extern INT   APIENTRY YnrcRemoveFile(LPSTR szFullPathSrc, INT cmo);
                    168: extern INT   APIENTRY YnrcBackupFile(LPSTR szFullPath, LPSTR szBackup,
                    169:                                INT cmo);
                    170: extern INT   APIENTRY FInitializeInstall(HANDLE hinst, HWND hwndFrame);
                    171: extern INT   APIENTRY WFindFileUsingFileOpen(LPSTR szFile, LPSTR szBuf,
                    172:                                INT cbBuf);
                    173: extern INT   APIENTRY FIsDirWritable(LPSTR szDir);
                    174: extern INT   APIENTRY FIsFileWritable(LPSTR szFile);
                    175: extern INT   APIENTRY FAddToBillboardList(LPSTR szDll, INT idDlg,
                    176:                                LPSTR szProc, LONG lTicks);
                    177: extern INT   APIENTRY FClearBillboardList(VOID);
                    178: extern INT   APIENTRY FSetRestartDir(LPSTR szDir);
                    179: extern INT   APIENTRY FRestartListEmpty(VOID);
                    180: extern INT   APIENTRY FExitExecRestart(VOID);
                    181: extern INT   APIENTRY SetCopyMode(INT fMode);
                    182: extern INT   APIENTRY GetCopyMode(VOID);
                    183: extern INT   APIENTRY SetDecompMode(INT fMode);
                    184: extern INT   APIENTRY GetDecompMode(VOID);
                    185: extern INT   APIENTRY SetSizeCheckMode(INT scmMode);
                    186: extern INT   APIENTRY FPrependToPath(LPSTR szSrc, LPSTR szDst, LPSTR szDir,
                    187:                                INT cmo);
                    188: 
                    189: extern INT   APIENTRY SetTimeValue(unsigned usHours, unsigned usMinutes,
                    190:                                unsigned Seconds);
                    191: extern VOID  APIENTRY ForceRestartOn(VOID);
                    192: extern VOID  APIENTRY TerminateInstall(VOID);
                    193: 
                    194: 
                    195: 
                    196: //****************  Setup Basic Wrapper Declarations  *********************
                    197: 
                    198: //shell
                    199: 
                    200: extern INT  InitSetupToolkit(LPSTR szCmdLine);
                    201: extern VOID EndSetupToolkit(VOID);
                    202: 
                    203: extern VOID  SetBitmap(LPSTR szDll, INT Bitmap);
                    204: extern LPSTR UIStartDlgExt(LPSTR szDll, INT Dlg, LPSTR szDlgProc,
                    205:                                LPSTR szHelpDll, INT HelpDlg, LPSTR szHelpProc, LPSTR szBfr,
                    206:                                INT cbBfrMax);
                    207: extern LPSTR UIStartDlg(LPSTR szDll, INT Dlg, LPSTR szDlgProc,
                    208:                                INT HelpDlg, LPSTR szHelpProc, LPSTR szBuf, INT cbBuf);
                    209: extern VOID  UIPop(INT n);
                    210: extern VOID  UIPopAll(VOID);
                    211: extern VOID  SetTitle(LPSTR sz);
                    212: extern VOID  ReadInfFile(LPSTR szFile);
                    213: extern VOID  SetSymbolValue(LPSTR szSymbol, LPSTR szValue);
                    214: extern LPSTR GetSymbolValue(LPSTR szSymbol, LPSTR szBuf, INT cbBuf);
                    215: extern INT   GetListLength(LPSTR szSymbol);
                    216: extern VOID  MakeListFromSectionKeys(LPSTR szSymbol, LPSTR szSect);
                    217: extern LPSTR GetListItem(LPSTR szSymbol, INT n, LPSTR szBuf,
                    218:                                INT cbBuf);
                    219: extern VOID  AddListItem(LPSTR szSymbol, LPSTR szItem);
                    220: extern VOID  ReplaceListItem(LPSTR szSymbol, INT n, LPSTR szItem);
                    221: 
                    222: extern INT   InitFrame(LPSTR szCmdLine);
                    223: 
                    224: extern INT   ShowWaitCursor(VOID);
                    225: extern VOID  RestoreCursor(INT hPrev);
                    226: 
                    227: 
                    228: extern VOID  AddSectionFilesToCopyList(LPSTR szSect, LPSTR szSrc,
                    229:                                LPSTR szDest);
                    230: extern VOID  AddSectionKeyFileToCopyList(LPSTR szSect, LPSTR szKey,
                    231:                                LPSTR szSrc, LPSTR szDest);
                    232: 
                    233: extern VOID  CopyFilesInCopyList(VOID);
                    234: extern VOID  CreateIniKeyValue(LPSTR szFile, LPSTR szSect,
                    235:                                LPSTR szKey, LPSTR szValue, INT cmo);
                    236: 
                    237: 
                    238: extern VOID  CreateProgmanGroup(LPSTR szGroup, LPSTR szPath,
                    239:                                INT cmo);
                    240: extern VOID  CreateProgmanItem(LPSTR szGroup, LPSTR szItem,
                    241:                                LPSTR szCmd, LPSTR szOther, INT cmo);
                    242: 
                    243: #ifdef WIN32
                    244: extern VOID  CreateProgmanGroupEx(LPSTR szGroup, BOOL fCommon,
                    245:                                INT cmo);
                    246: extern VOID  CreateProgmanItemEx(LPSTR szGroup, BOOL fCommon, LPSTR szItem,
                    247:                                LPSTR szCmd, LPSTR szOther, INT cmo);
                    248: #endif
                    249: 
                    250: extern VOID  AddToBillboardList(LPSTR szDll, INT idDlg, LPSTR szProc,
                    251:                                LONG lTicks);
                    252: extern VOID  SetCopyGaugePosition(INT x, INT y);
                    253: extern INT   IsDirWritable(LPSTR szDir);
                    254: 
                    255: extern LPSTR GetWindowsDir(LPSTR szBuf, INT cbBuf);
                    256: extern LPSTR GetWindowsSysDir(LPSTR szBuf, INT cbBuf);
                    257: 
                    258: // NOTE: this routine must exist in code files supplied by app
                    259: extern VOID SetupError(INT);
                    260: 
                    261: extern INT   InitInstall(VOID);
                    262: 
                    263: extern LPSTR   SzCatStr(LPSTR sz1, LPSTR sz2);
                    264: extern LPSTR   SzCat2Str(LPSTR sz1, LPSTR sz2, LPSTR sz3);
                    265: extern LPSTR   SzCat3Str(LPSTR sz1, LPSTR sz2, LPSTR sz3,
                    266:                                LPSTR sz4);
                    267: 
                    268: extern LPSTR GetSectionKeyFilename(LPSTR szSect, LPSTR szKey,
                    269:                                LPSTR szBuf, INT cbBuf);
                    270: extern VOID  ShowProgmanGroup(LPSTR szGroup, INT Cmd, INT cmo);
                    271: extern INT   APIENTRY  FShowProgManGroup(LPSTR szGroup, LPSTR szCmd, INT cmo);
                    272: 
                    273: #ifdef WIN32
                    274: extern VOID  ShowProgmanGroupEx(LPSTR szGroup, BOOL fCommon, INT Cmd, INT cmo);
                    275: extern INT   APIENTRY  FShowProgManGroupEx(LPSTR szGroup, BOOL fCommon, LPSTR szCmd, INT cmo);
                    276: #endif
                    277: 
                    278: extern VOID  ClearCopyList(VOID);
                    279: extern VOID  MakeListFromSectionSize(LPSTR szSym, LPSTR szSect);
                    280: extern LONG  GetSectionKeySize(LPSTR szSect, LPSTR szKey);
                    281: extern INT   GetWindowsMajorVersion(VOID);
                    282: extern INT   GetWindowsMinorVersion(VOID);
                    283: extern VOID  MakeListFromSectionFilename(LPSTR szSym, LPSTR szSect);
                    284: extern VOID  CreateDir(LPSTR szDir, INT cmo);
                    285: extern LPSTR GetSectionKeyDate(LPSTR szSect, LPSTR szKey,
                    286:                                LPSTR szBuf, INT cbBuf);
                    287: #ifndef WIN32
                    288: extern VOID  CopyFile(LPSTR szFullPathSrc, LPSTR szFullPathDst,
                    289:                                INT cmo, INT fAppend);
                    290: #endif
                    291: extern VOID  RemoveFile(LPSTR szFullPathSrc, INT cmo);
                    292: extern VOID  SetAbout(LPSTR szAbout1, LPSTR szAbout2);
                    293: 
                    294: extern VOID  RightTrim(LPSTR sz);
                    295: extern VOID  RemoveSymbol(LPSTR szSym);
                    296: extern LONG  GetCopyListCost(LPSTR szExtraList, LPSTR szCostList,
                    297:                                LPSTR szNeedList);
                    298: extern VOID  StampResource(LPSTR szSect, LPSTR szKey, LPSTR szDst,
                    299:                                INT wResType, INT wResId, LPSTR szData, INT cbData);
                    300: extern BOOL  DoesAnyFileNeedCopying(VOID);
                    301: 
                    302: extern CHAR    szCurDir[];
                    303: 
                    304: 
                    305: #ifndef STF_LITE
                    306: extern VOID TerminateRegDb(VOID);
                    307: 
                    308: 
                    309: extern INT   SetBeepingMode(INT mode);
                    310: extern INT   SetSilentMode(INT mode);
                    311: 
                    312: extern LPSTR GetSectionKeyVersion(LPSTR szSect, LPSTR szKey,
                    313:                                LPSTR szBuf, INT cbBuf);
                    314: 
                    315: extern VOID  MakeListFromSectionDate(LPSTR szSym, LPSTR szSect);
                    316: extern VOID  MakeListFromSectionVersion(LPSTR szSym, LPSTR szSect);
                    317: 
                    318: 
                    319: //install
                    320: 
                    321: extern VOID  RemoveDir(LPSTR szDir, INT cmo);
                    322: extern VOID  AddSpecialFileToCopyList(LPSTR szSect, LPSTR szKey,
                    323:                                LPSTR szSrc, LPSTR szDest);
                    324: extern VOID  RemoveIniSection(LPSTR szFile, LPSTR szSect, INT cmo);
                    325: extern VOID  RemoveIniKey(LPSTR szFile, LPSTR szSect, LPSTR szKey,
                    326:                                INT cmo);
                    327: extern VOID  CreateSysIniKeyValue(LPSTR szFile, LPSTR szSect,
                    328:                                LPSTR szKey, LPSTR szValue, INT cmo);
                    329: extern VOID  DumpCopyList(LPSTR szFile);
                    330: extern VOID  AddDos5Help(LPSTR szProgName, LPSTR szProgHelp,
                    331:                                INT cmo);
                    332: extern VOID  CopyAFile(LPSTR szFullPathSrc, LPSTR szFullPathDst, INT cmo,        
                    333:                                 INT fAppend);                                   
                    334: 
                    335: extern VOID  BackupFile(LPSTR szFullPath, LPSTR szBackup);
                    336: extern VOID  RenameFile(LPSTR szFullPath, LPSTR szBackup);
                    337: extern VOID  AddBlankToBillboardList(LONG lTicks);
                    338: extern VOID  ClearBillboardList(VOID);
                    339: extern VOID  OpenLogFile(LPSTR szFile, INT fAppend);
                    340: extern VOID  CloseLogFile(VOID);
                    341: extern VOID  WriteToLogFile(LPSTR szStr);
                    342: extern VOID  SetRestartDir(LPSTR szDir);
                    343: extern BOOL  RestartListEmpty(VOID);
                    344: extern INT   ExitExecRestart(VOID);
                    345: extern LPSTR FindFileUsingFileOpen(LPSTR szFile, LPSTR szBuf,
                    346:                                INT cbBuf);
                    347: extern BOOL  IsFileWritable(LPSTR szFile);
                    348: extern LPSTR GetNthFieldFromIniString(LPSTR szLine, INT iField,
                    349:                                LPSTR szBuf, INT cbBuf);
                    350: extern VOID  PrependToPath(LPSTR szSrc, LPSTR szDst, LPSTR szDir,
                    351:                                INT cmo);
                    352: 
                    353: 
                    354: // Error Handling
                    355: 
                    356: 
                    357: #ifdef DEBUG
                    358: 
                    359: // Setup API Errors
                    360: #define saeFail 0
                    361: #define saeInit 1
                    362: #define saeNYI  3
                    363: #define saeOvfl 4
                    364: #define saeArg  5      //must be max sae value
                    365: 
                    366: extern VOID  StfApiErr(INT nMsg, LPSTR szApi, LPSTR szArgs);
                    367: extern VOID  BadArgErr(INT nArg, LPSTR szApi, LPSTR szArgs);
                    368: 
                    369: extern INT   FValidDrive(LPSTR szDrive);
                    370: extern INT   FValidInfSect(LPSTR szSect);
                    371: extern INT   FValidIniFile(LPSTR szFile);
                    372: 
                    373: #define      FEmptySz(sz)            ((sz)==NULL || *(sz)=='\0')
                    374: #define      FValidSz(sz)            ((sz) && *(sz))
                    375: 
                    376: #endif //DEBUG
                    377: 
                    378: 
                    379: // Windows system detect
                    380: 
                    381: extern INT   GetWindowsMode(VOID);
                    382: extern BOOL  IsWindowsShared(VOID);
                    383: extern INT   GetScreenWidth(VOID);
                    384: extern INT   GetScreenHeight(VOID);
                    385: 
                    386: extern INT   InStr(INT cch, LPSTR sz1, LPSTR sz2);
                    387: 
                    388: extern BOOL     APIENTRY AssertSzUs(LPSTR, unsigned);
                    389: #ifdef DEBUG
                    390: #define  Assert(f)  ((f) ? (VOID)0 : (VOID)AssertSzUs(__FILE__,__LINE__))
                    391: #else
                    392: #define  Assert(f)  ((VOID)0)
                    393: #endif
                    394: 
                    395: typedef  BYTE FAR *  PB;
                    396: 
                    397: extern PB   APIENTRY PbSaveMemInf(VOID);
                    398: extern VOID APIENTRY RestoreMemInf(PB);
                    399: extern VOID APIENTRY FreeMemInf(PB);
                    400: 
                    401: extern BOOL APIENTRY AddSrcFileWithAttribsToCopyList(LPSTR szSect,
                    402:                                LPSTR szKey, LPSTR szSrcPath, LPSTR szDstPath);
                    403: #endif  /* !STF_LITE */
                    404: 
                    405: #ifndef WF_WINNT
                    406: #define WF_WINNT 0x4000
                    407: #endif /* !WF_WINNT */
                    408: 
                    409: #ifndef WF_CPUR4000
                    410: #define WF_CPUR4000 0x0100
                    411: #endif /* !WF_CPUR4000 */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.