root/trunk/undel.c

Revision 1216, 1.6 kB (checked in by jbs, 2 months ago)

Ticket 187: Move data declarations/definitions out of fm3dll.h

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1
2/***********************************************************************
3
4  $Id$
5
6  File undelete applet
7
8  Copyright (c) 1993-98 M. Kimes
9  Copyright (c) 2007 Steven H. Levine
10
11  23 Sep 07 SHL Sync with standards
12  23 Sep 07 SHL Get rid of statics
13
14***********************************************************************/
15
16#include <string.h>
17
18#define INCL_DOS
19
20#include "dll\fm3dll.h"
21#include "dll\mainwnd.h"                // Data declaration(s)
22#include "dll\fm3dlg.h"
23#include "dll\undel.h"                  // UndeleteDlgProc
24#include "dll\init.h"                   // InitFM3DLL
25#include "dll\valid.h"                  // MakeValidDir
26#include "dll\dirs.h"                   // save_dir
27
28int main(int argc, char *argv[])
29{
30  HAB hab;
31  HMQ hmq;
32  FILESTATUS3 fs;
33  CHAR fullname[CCHMAXPATH];
34  CHAR *thisarg = NULL;
35  INT x;
36
37  DosError(FERR_DISABLEHARDERR);
38  for (x = 1; x < argc; x++) {
39    if (!strchr("/;,`\'", *argv[x]) && !thisarg) {
40      thisarg = argv[x];
41      break;
42    }
43  }
44  if (!thisarg) {
45    thisarg = fullname;
46    save_dir(fullname);
47  }
48  DosError(FERR_DISABLEHARDERR);
49  if (thisarg && !DosQueryPathInfo(thisarg, FIL_STANDARD, &fs, sizeof(fs))) {
50    if (DosQueryPathInfo(thisarg,
51                         FIL_QUERYFULLNAME, fullname, sizeof(fullname)))
52      strcpy(fullname, thisarg);
53    hab = WinInitialize(0);
54    if (hab) {
55      hmq = WinCreateMsgQueue(hab, 256);
56      if (hmq) {
57        if (InitFM3DLL(hab, argc, argv)) {
58          MakeValidDir(fullname);
59          WinDlgBox(HWND_DESKTOP,
60                    HWND_DESKTOP,
61                    UndeleteDlgProc,
62                    FM3ModHandle,
63                    UNDEL_FRAME,
64                    fullname);
65        }
66        DosSleep(250);
67        WinDestroyMsgQueue(hmq);
68      }
69      WinTerminate(hab);
70    }
71  }
72  else
73    DosBeep(250, 100);
74  return 0;
75}
Note: See TracBrowser for help on using the browser.