Hex Artifact Content

Not logged in

Artifact 78e05bd9298c6705e64d7049fc53cd0e1d9123d7:


0000: 2f 2f 2d 2d 2d 20 4b 2e 49 2e 4c 49 42 20 2d 2d  //--- K.I.LIB --
0010: 2d 0d 0a 2f 2f 20 6b 6c 5f 77 63 6d 6e 2e 68 20  -..// kl_wcmn.h 
0020: 3a 20 77 69 6e 64 6f 77 73 2d 63 6f 6d 6d 6f 6e  : windows-common
0030: 2d 69 6e 74 65 72 66 61 63 65 20 6f 70 65 72 61  -interface opera
0040: 74 69 6e 0d 0a 0d 0a 23 69 66 6e 64 65 66 20 41  tin....#ifndef A
0050: 46 58 5f 4b 49 57 49 4e 43 4f 4d 4d 4f 4e 5f 48  FX_KIWINCOMMON_H
0060: 5f 5f 30 36 38 36 37 32 31 43 5f 43 41 46 42 5f  __0686721C_CAFB_
0070: 34 43 32 43 5f 39 46 45 35 5f 30 46 34 38 32 45  4C2C_9FE5_0F482E
0080: 41 36 41 36 30 42 5f 5f 49 4e 43 4c 55 44 45 44  A6A60B__INCLUDED
0090: 5f 0d 0a 23 64 65 66 69 6e 65 20 41 46 58 5f 4b  _..#define AFX_K
00a0: 49 57 49 4e 43 4f 4d 4d 4f 4e 5f 48 5f 5f 30 36  IWINCOMMON_H__06
00b0: 38 36 37 32 31 43 5f 43 41 46 42 5f 34 43 32 43  86721C_CAFB_4C2C
00c0: 5f 39 46 45 35 5f 30 46 34 38 32 45 41 36 41 36  _9FE5_0F482EA6A6
00d0: 30 42 5f 5f 49 4e 43 4c 55 44 45 44 5f 0d 0a 0d  0B__INCLUDED_...
00e0: 0a 2f 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d  ./*=*=*=*=*=*=*=
00f0: 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d  *=*=*=*=*=*=*=*=
0100: 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d  *=*=*=*=*=*=*=*=
0110: 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d 2a 3d  *=*=*=*=*=*=*=*=
0120: 2a 3d 2a 3d 2a 3d 2a 3d 2a 2f 0d 0a 2f 2f 20 83  *=*=*=*=*/..// .
0130: 56 83 46 83 8b 83 86 81 5b 83 65 83 42 83 8a 83  V.F.....[.e.B...
0140: 65 83 42 81 5b 83 4e 83 89 83 58 0d 0a 0d 0a 63  e.B.[.N...X....c
0150: 6c 61 73 73 20 6b 69 53 55 74 69 6c 0d 0a 7b 0d  lass kiSUtil..{.
0160: 0a 70 75 62 6c 69 63 3a 0d 0a 09 2f 2f 20 83 4a  .public:...// .J
0170: 83 8c 83 93 83 67 83 66 83 42 83 8c 83 4e 83 67  .....g.f.B...N.g
0180: 83 8a 91 de 94 f0 0d 0a 09 73 74 61 74 69 63 20  .........static 
0190: 76 6f 69 64 20 73 77 69 74 63 68 43 75 72 44 69  void switchCurDi
01a0: 72 54 6f 45 78 65 44 69 72 28 29 3b 0d 0a 0d 0a  rToExeDir();....
01b0: 09 2f 2f 20 81 75 83 74 83 48 83 8b 83 5f 82 cc  .// .u.t.H..._..
01c0: 91 49 91 f0 81 76 83 5f 83 43 83 41 83 8d 83 4f  .I...v._.C.A...O
01d0: 0d 0a 09 73 74 61 74 69 63 20 62 6f 6f 6c 20 67  ...static bool g
01e0: 65 74 46 6f 6c 64 65 72 44 6c 67 28 20 63 68 61  etFolderDlg( cha
01f0: 72 2a 20 62 75 66 2c 20 48 57 4e 44 20 70 61 72  r* buf, HWND par
0200: 2c 20 63 6f 6e 73 74 20 63 68 61 72 2a 20 74 69  , const char* ti
0210: 74 6c 65 2c 20 63 6f 6e 73 74 20 63 68 61 72 2a  tle, const char*
0220: 20 64 65 66 20 29 3b 0d 0a 09 73 74 61 74 69 63   def );...static
0230: 20 76 6f 69 64 20 67 65 74 46 6f 6c 64 65 72 44   void getFolderD
0240: 6c 67 4f 66 45 64 69 74 42 6f 78 28 20 48 57 4e  lgOfEditBox( HWN
0250: 44 20 77 6e 64 2c 20 48 57 4e 44 20 70 61 72 2c  D wnd, HWND par,
0260: 20 63 6f 6e 73 74 20 63 68 61 72 2a 20 74 69 74   const char* tit
0270: 6c 65 20 29 3b 0d 0a 0d 0a 09 2f 2f 20 91 ce 89  le );.....// ...
0280: 9e 82 b7 82 e9 8a 67 92 a3 8e 71 97 70 83 41 83  ......g...q.p.A.
0290: 43 83 52 83 93 82 cc 81 41 83 56 83 58 83 65 83  C.R.....A.V.X.e.
02a0: 80 83 43 83 81 81 5b 83 57 83 8a 83 58 83 67 82  ..C...[.W...X.g.
02b0: cc 83 43 83 93 83 66 83 62 83 4e 83 58 82 f0 95  ..C...f.b.N.X...
02c0: d4 82 b7 81 42 0d 0a 09 73 74 61 74 69 63 20 69  ....B...static i
02d0: 6e 74 20 67 65 74 53 79 73 49 63 6f 6e 28 20 63  nt getSysIcon( c
02e0: 6f 6e 73 74 20 63 68 61 72 2a 20 65 78 74 20 29  onst char* ext )
02f0: 3b 0d 0a 0d 0a 09 2f 2f 20 8d c5 8c e3 82 cc 83  ;.....// .......
0300: 47 83 89 81 5b 82 f0 95 5c 8e a6 0d 0a 09 73 74  G...[...\.....st
0310: 61 74 69 63 20 76 6f 69 64 20 6d 73 67 4c 61 73  atic void msgLas
0320: 74 45 72 72 6f 72 28 20 63 6f 6e 73 74 20 63 68  tError( const ch
0330: 61 72 2a 20 6d 73 67 20 3d 20 4e 55 4c 4c 20 29  ar* msg = NULL )
0340: 3b 0d 0a 0d 0a 09 2f 2f 20 8e a9 95 aa 82 d6 82  ;.....// .......
0350: cc 83 56 83 87 81 5b 83 67 83 4a 83 62 83 67 8d  ..V...[.g.J.b.g.
0360: ec 90 ac 0d 0a 09 73 74 61 74 69 63 20 76 6f 69  ......static voi
0370: 64 20 63 72 65 61 74 65 53 68 6f 72 74 43 75 74  d createShortCut
0380: 28 20 63 6f 6e 73 74 20 6b 69 50 61 74 68 26 20  ( const kiPath& 
0390: 61 74 2c 20 63 6f 6e 73 74 20 63 68 61 72 2a 20  at, const char* 
03a0: 6e 61 6d 65 20 29 3b 0d 0a 0d 0a 09 2f 2f 20 83  name );.....// .
03b0: 74 83 40 83 43 83 8b 82 aa 91 b6 8d dd 82 b7 82  t.@.C...........
03c0: e9 81 48 0d 0a 09 73 74 61 74 69 63 20 62 6f 6f  ..H...static boo
03d0: 6c 20 65 78 69 73 74 28 20 63 6f 6e 73 74 20 63  l exist( const c
03e0: 68 61 72 2a 20 66 6e 61 6d 65 20 29 3b 0d 0a 09  har* fname );...
03f0: 73 74 61 74 69 63 20 62 6f 6f 6c 20 69 73 64 69  static bool isdi
0400: 72 28 20 63 6f 6e 73 74 20 63 68 61 72 2a 20 66  r( const char* f
0410: 6e 61 6d 65 20 29 3b 0d 0a 0d 0a 09 2f 2f 20 83  name );.....// .
0420: 4a 83 8c 83 93 83 67 83 66 83 42 83 8c 83 4e 83  J.....g.f.B...N.
0430: 67 83 8a 82 f0 88 c0 91 53 82 c8 82 c6 82 b1 82  g.......S.......
0440: eb 82 c9 88 da 82 b5 82 c4 4c 6f 61 64 4c 69 62  .........LoadLib
0450: 72 61 72 79 0d 0a 09 73 74 61 74 69 63 20 48 4d  rary...static HM
0460: 4f 44 55 4c 45 20 6c 6f 61 64 4c 69 62 72 61 72  ODULE loadLibrar
0470: 79 28 4c 50 43 54 53 54 52 20 6c 70 46 69 6c 65  y(LPCTSTR lpFile
0480: 4e 61 6d 65 29 0d 0a 09 7b 0d 0a 09 09 63 68 61  Name)...{....cha
0490: 72 20 6f 72 69 67 69 6e 61 6c 5f 63 75 72 5b 4d  r original_cur[M
04a0: 41 58 5f 50 41 54 48 5d 2c 20 73 79 73 5b 4d 41  AX_PATH], sys[MA
04b0: 58 5f 50 41 54 48 5d 3b 0d 0a 09 09 3a 3a 47 65  X_PATH];....::Ge
04c0: 74 43 75 72 72 65 6e 74 44 69 72 65 63 74 6f 72  tCurrentDirector
04d0: 79 28 4d 41 58 5f 50 41 54 48 2c 20 6f 72 69 67  y(MAX_PATH, orig
04e0: 69 6e 61 6c 5f 63 75 72 29 3b 0d 0a 09 09 3a 3a  inal_cur);....::
04f0: 47 65 74 53 79 73 74 65 6d 44 69 72 65 63 74 6f  GetSystemDirecto
0500: 72 79 28 73 79 73 2c 20 4d 41 58 5f 50 41 54 48  ry(sys, MAX_PATH
0510: 29 3b 0d 0a 09 09 3a 3a 53 65 74 43 75 72 72 65  );....::SetCurre
0520: 6e 74 44 69 72 65 63 74 6f 72 79 28 73 79 73 29  ntDirectory(sys)
0530: 3b 0d 0a 09 09 48 4d 4f 44 55 4c 45 20 68 61 6e  ;....HMODULE han
0540: 20 3d 20 3a 3a 4c 6f 61 64 4c 69 62 72 61 72 79   = ::LoadLibrary
0550: 28 6c 70 46 69 6c 65 4e 61 6d 65 29 3b 0d 0a 09  (lpFileName);...
0560: 09 3a 3a 53 65 74 43 75 72 72 65 6e 74 44 69 72  .::SetCurrentDir
0570: 65 63 74 6f 72 79 28 6f 72 69 67 69 6e 61 6c 5f  ectory(original_
0580: 63 75 72 29 3b 0d 0a 09 09 72 65 74 75 72 6e 20  cur);....return 
0590: 68 61 6e 3b 0d 0a 09 7d 0d 0a 7d 3b 0d 0a 0d 0a  han;...}..};....
05a0: 23 65 6e 64 69 66 0d 0a                          #endif..