Changeset 690 for trunk/dll/init.c
- Timestamp:
- Jun 15, 2007, 6:02:06 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/dll/init.c
r689 r690 23 23 30 Mar 07 GKY Defined golbals for removing GetPString for window class names 24 24 21 Apr 07 GKY Find FM2Utils by path or utils directory eleminate fAddUtils global 25 15 Jun 07 SHL Make OpenWatcom compatible 25 26 26 27 ***********************************************************************/ … … 50 51 #include "version.h" 51 52 53 #ifdef __WATCOMC__ 54 #pragma alloc_text(INIT,LibMain,InitFM3DLL,DeInitFM3DLL) 55 #else // __IBMC__ 52 56 #pragma alloc_text(INIT,_DLL_InitTerm,InitFM3DLL,DeInitFM3DLL) 57 #endif 58 53 59 #pragma alloc_text(INIT1,StartFM3,FindSwapperDat) 54 60 … … 160 166 } 161 167 162 unsigned long _System _DLL_InitTerm(unsigned long hModule, 163 unsigned long ulFlag) 168 #ifdef __WATCOMC__ 169 170 unsigned APIENTRY LibMain(unsigned hModule, 171 unsigned ulFlag) 164 172 { 165 173 CHAR *env; … … 170 178 switch (ulFlag) { 171 179 case 0: 172 if (_CRT_init() == -1) 173 return 0UL; 180 // 14 Jun 07 SHL Already done for us 181 // if (_CRT_init() == -1) 182 // return 0UL; 174 183 FM3DllHandle = hModule; 175 184 strcpy(stringfile, "FM3RES.STR"); … … 265 274 PrfCloseProfile(fmprof); 266 275 DosError(FERR_ENABLEHARDERR); 276 // 14 Jun 07 SHL Already done for us 277 // _CRT_term(); 278 break; 279 default: 280 return 0UL; 281 } 282 return 1UL; 283 } 284 285 #else // __IBMC__ 286 287 unsigned long _System _DLL_InitTerm(unsigned long hModule, 288 unsigned long ulFlag) 289 { 290 CHAR *env; 291 CHAR stringfile[CCHMAXPATH]; 292 FILESTATUS3 fsa; 293 APIRET rc; 294 295 switch (ulFlag) { 296 case 0: 297 if (_CRT_init() == -1) 298 return 0UL; 299 FM3DllHandle = hModule; 300 strcpy(stringfile, "FM3RES.STR"); 301 env = getenv("FM3INI"); 302 if (env) { 303 DosError(FERR_DISABLEHARDERR); 304 rc = DosQueryPathInfo(env, FIL_STANDARD, &fsa, (ULONG) sizeof(fsa)); 305 if (!rc) { 306 if (fsa.attrFile & FILE_DIRECTORY) { 307 strcpy(stringfile, env); 308 if (stringfile[strlen(stringfile) - 1] != '\\') 309 strcat(stringfile, "\\"); 310 strcat(stringfile, "FM3RES.STR"); 311 DosError(FERR_DISABLEHARDERR); 312 if (DosQueryPathInfo(stringfile, FIL_STANDARD, &fsa, sizeof(fsa))) 313 strcpy(stringfile, "FM3RES.STR"); 314 } 315 } 316 } 317 LoadStrings(stringfile); 318 319 DosError(FERR_DISABLEHARDERR); 320 /* strings here to prevent multiple occurences in DLL */ 321 FM2Str = "FM/2"; 322 FM3Str = "FM/3"; 323 NullStr = ""; 324 Default = "DEFAULT"; 325 Settings = "SETTINGS"; 326 WPProgram = "WPProgram"; 327 FM3Folder = "<FM3_Folder>"; 328 FM3Tools = "<FM3_Tools>"; 329 DRM_OS2FILE = "DRM_OS2FILE"; 330 DRM_FM2ARCMEMBER = "DRM_FM2ARCMEMBER"; 331 DRF_FM2ARCHIVE = "DRF_FM2ARCHIVE"; 332 DRMDRFLIST = "<DRM_OS2FILE,DRF_UNKNOWN>," 333 "<DRM_DISCARD,DRF_UNKNOWN>," "<DRM_PRINT,DRF_UNKNOWN>"; 334 DRMDRFOS2FILE = "<DRM_OS2FILE,DRF_UNKNOWN>"; 335 DRMDRFFM2ARC = "<DRM_FM2ARCMEMBER,DRF_FM2ARCHIVE>"; 336 DRM_FM2INIRECORD = "DRM_FM2INIRECORD"; 337 DRF_FM2INI = "DRF_FM2INI"; 338 SUBJECT = ".SUBJECT"; 339 LONGNAME = ".LONGNAME"; 340 HPFS = "HPFS"; 341 JFS = "JFS"; 342 CDFS = "CDFS"; 343 ISOFS = "ISOFS"; 344 FAT32 = "FAT32"; 345 HPFS386 = "HPFS386"; 346 CBSIFS = "CBSIFS"; 347 NDFS32 = "NDFS32"; 348 RAMFS = "RAMFS"; 349 NTFS = "NTFS"; 350 WC_OBJECTWINDOW = "WC_OBJECTWINDOW"; 351 WC_BUBBLE = "WC_BUBBLE"; 352 WC_TOOLBUTTONS = "WC_TOOLBUTTONS"; 353 WC_DRIVEBUTTONS = "WC_DRIVEBUTTONS"; 354 WC_DIRCONTAINER = "WC_DIRCONTAINER"; 355 WC_DIRSTATUS = "WC_DIRSTATUS"; 356 WC_TREECONTAINER = "WC_TREECONTAINER"; 357 WC_TREEOPENBUTTON = "WC_TREEOPENBUTTON"; 358 WC_TREESTATUS = "WC_TREESTATUS"; 359 WC_MAINWND = "WC_MAINWND"; 360 WC_MAINWND2 = "WC_MAINWND2"; 361 WC_AUTOVIEW = "WC_AUTOVIEW"; 362 WC_LED = "WC_LED"; 363 WC_COLLECTOR = "WC_COLLECTOR"; 364 WC_COLSTATUS = "WC_COLSTATUS"; 365 WC_STATUS = "WC_STATUS"; 366 WC_TOOLBACK = "WC_TOOLBACK"; 367 WC_DRIVEBACK = "WC_DRIVEBACK"; 368 WC_ARCCONTAINER = "WC_ARCCONTAINER"; 369 WC_ARCSTATUS = "WC_ARCSTATUS"; 370 WC_MLEEDITOR = "WC_MLEEDITOR"; 371 WC_INIEDITOR = "WC_INIEDITOR"; 372 WC_SEEALL = "WC_SEEALL"; 373 WC_NEWVIEW = "WC_NEWVIEW"; 374 WC_SEESTATUS = "WC_SEESTATUS"; 375 WC_VIEWSTATUS = "WC_VIEWSTATUS"; 376 WC_ERRORWND = "WC_ERRORWND"; 377 WC_MINITIME = "WC_MINITIME"; 378 WC_DATABAR = "WC_DATABAR"; 379 380 /* end of strings */ 381 memset(&RGBBLACK, 0, sizeof(RGB2)); 382 RGBGREY.bRed = RGBGREY.bGreen = RGBGREY.bBlue = (BYTE)204; 383 RGBGREY.fcOptions = 0; 384 FM3UL = *(ULONG *) FM3Str; 385 DEBUG_STRING = "Debug -- please report to author"; 386 break; 387 case 1: 388 StopPrinting = 1; 389 if (fmprof) 390 PrfCloseProfile(fmprof); 391 DosError(FERR_ENABLEHARDERR); 267 392 _CRT_term(); 268 393 break; … … 272 397 return 1UL; 273 398 } 399 400 #endif // __IBMC__ 274 401 275 402 VOID APIENTRY DeInitFM3DLL(ULONG why)
Note:
See TracChangeset
for help on using the changeset viewer.