home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1998 July & August / Pcwk78b98.iso / Smart30 / ENGLISH / PRODUCTS / LOTUS018.DSK / APPROACH.SMM < prev    next >
INI File  |  1994-01-26  |  6KB  |  345 lines

  1. [ver]
  2.     4
  3. [sty]
  4.     _macro.sty
  5. [files]
  6. [charset]
  7.     82
  8.     ANSI (Windows, IBM CP 1252)
  9. [revisions]
  10.     0
  11. [prn]
  12.     PostScript Printer
  13. [port]
  14.     LPT1:
  15. [lang]
  16.     1
  17. [desc]
  18.     Launch Approach
  19.     Lotus WPD Marketing
  20.     Beginner
  21.     Exec, ActivateApp
  22.     noautorun
  23.     759625618
  24.     22
  25.     674329275
  26.     148
  27.     2
  28.     0
  29.     0
  30.     0
  31.     0
  32.     
  33.     
  34.     
  35.     
  36.     
  37.     
  38.     0
  39. [fopts]
  40.     0
  41.     1
  42.     0
  43.     0
  44. [lnopts]
  45.     2
  46.     Body Text
  47.     1
  48. [docopts]
  49.     5
  50.     2
  51. [GramStyle]
  52.     
  53. [ParaNum]
  54.     1
  55. [l1]
  56.     0
  57. [pg]
  58.     2
  59.     45 0 0 0 0 0 0 65535 65535 Standard    65535 0 0    0 0 0 0 0 0 0 65535 0 0 65535 0 0 0 0 0
  60.     76 0 0 1025 0 0 0 65535 65535 Standard    65535 0 0    0 0 0 0 0 0 0 65535 0 0 65535 0 0 0 0 0
  61. [edoc]
  62. <:#293,9360>Macro by <+!>Charlie Pappas<-!>
  63.  
  64. <:#284,9360>
  65.  
  66. @Function@<:#293,9360>function execsuite()
  67.  
  68. app = "approach.exe"
  69.  
  70. appname = "Lotus Approach"
  71.  
  72. defdir = "c:\approach"
  73.  
  74. <:#284,9360>ignorekeyboard(2)
  75.  
  76. <:#284,9360>declare missouri(xapp) ' <:f200,QCourier,0,0,255>declare user defined functions
  77.  
  78. <:#284,9360>declare getprofile(xappname)
  79.  
  80. <:#284,9360>declare writeprofile(path, xappname)
  81.  
  82. <:#284,9360>declare tryit(path, xapp)
  83.  
  84. <:#284,9360>defstr path;
  85.  
  86. <:#284,9360>
  87.  
  88. <:#284,9360>if appisrunning(appname) ' <:f200,QCourier,0,0,255>first see if app is already running
  89.  
  90. <:#284,9360>    activateapp(appname) ' <:f200,QCourier,0,0,255>if the app is running, just activate it
  91.  
  92. <:#284,9360>    apprestore(appname) ' <:f200,QCourier,0,0,255>make sure it is not minimized<:f>
  93.  
  94. <:#284,9360>    return 1
  95.  
  96. <:#284,9360>endif
  97.  
  98. <:#284,9360>if 0 = doschdir(defdir) ' <:f200,QCourier,0,0,255>try and change to the default directory for launch
  99.  
  100. <:#284,9360>    if tryit("", app) <;> 31
  101.  
  102. <:#284,9360>        return 1
  103.  
  104. <:#284,9360>    endif
  105.  
  106. <:#284,9360>endif
  107.  
  108. <:#284,9360>if tryit(getprofile(appname), app) <;> 31 ' <:f200,QCourier,0,0,255>if we launch, get out<:f>
  109.  
  110. <:#284,9360>    return 1
  111.  
  112. <:#284,9360>endif
  113.  
  114. <:#284,9360>again:
  115.  
  116. <:#284,9360>if assign(&path, missouri(app)) <<<;> 0 ' <:f200,QCourier,0,0,255>show me where the exe is
  117.  
  118. <:#284,9360>    if tryit(path, app) <;> 31
  119.  
  120. <:#284,9360>        writeprofile(path, appname)
  121.  
  122. <:#284,9360>    else
  123.  
  124. <:#284,9360>        goto again
  125.  
  126. <:#284,9360>    endif
  127.  
  128. <:#284,9360>endif
  129.  
  130. <:#284,9360>end function
  131.  
  132. <:#284,9360>
  133.  
  134. @Function@<:#293,9360>function tryit(path, app) ' <:f200,QCourier,0,0,255>this function attemts to exec the app
  135.  
  136. <:#284,9360>doschdir(path)
  137.  
  138. <:#284,9360>return exec(strcat$(path, app), "")
  139.  
  140. <:#284,9360>end function
  141.  
  142. <:#284,9360>
  143.  
  144. @Function@<:#293,9360>function writeprofile(path, appname) ' <:f200,QCourier,0,0,255>save the path if exec works
  145.  
  146. <:#284,9360>writeprofilestring("LotusApps", appname, path, "amipro2.ini")
  147.  
  148. <:#284,9360>end function
  149.  
  150. <:#284,9360>
  151.  
  152. @Function@<:#293,9360>function getprofile(appname) ' <:f200,QCourier,0,0,255>get the path of successful exec
  153.  
  154. <:#284,9360>defstr path;
  155.  
  156. <:#284,9360>if assign(&path, getprofilestring$("LotusApps", appname, "amipro2.ini")) <<<;> ""
  157.  
  158. <:#284,9360>    return path
  159.  
  160. <:#284,9360>endif
  161.  
  162. <:#284,9360>return getprofilestring$("LotusApps", appname, "amipro.ini")
  163.  
  164. <:#284,9360>end function
  165.  
  166.  
  167. @Function@function missouri(app) ' <:f200,QCourier,0,0,255>ask user for location of exe
  168.  
  169. defstr box;
  170.  
  171. filledit(9001, "*.exe")
  172.  
  173. filledit(8007, app)
  174.  
  175. if assign(&box, dialogbox(".", "findapp")) <<<;> 1
  176.  
  177.     return 0
  178.  
  179. endif
  180.  
  181. return getcurrentdir$()
  182.  
  183. end function
  184.  
  185.  
  186.  
  187. @Function@DIALOG findapp
  188.  
  189. -2134376448 7 70 35 200 97 "" "" "Find Application"
  190.  
  191. FONT 8 "Helv"
  192.  
  193. 7 34 59 8 1000 1342177280 "static" "&Program path:" 0 
  194.  
  195. 6 45 60 44 9001 1352728579 "listbox" "" 0 
  196.  
  197. 155 5 40 14 1 1342373889 "button" "OK" 0 
  198.  
  199. 155 21 40 14 2 1342373888 "button" "Cancel" 0 
  200.  
  201. 68 34 80 8 7999 1342177280 "static" "" 0 
  202.  
  203. 7 6 142 9 1006 1342177280 "static" "Change into the directory that contains" 0 
  204.  
  205. 7 16 107 8 8007 1342177280 "static" "" 0 
  206.  
  207. END DIALOG
  208.  
  209.  
  210. >
  211.  
  212. [Embedded]
  213. 00003858
  214. >
  215. [macsum] 6
  216. execsuite 0 0 5 2
  217. tryit 531 2 1 36
  218. writeprofile 612 2 1 41
  219. getprofile 686 1 2 45
  220. missouri 860 1 2 53
  221. findapp 1017 0 -1 64
  222. [macse]
  223. 14 execsuite
  224. 7 "approach.exe"
  225. 8 1
  226. 7 "Lotus Approach"
  227. 8 2
  228. 7 "c:\approach"
  229. 8 3
  230. 0 32 2
  231. 0 1032 "{2}"
  232. 13
  233. 11 00000161
  234. 0 38 "{2}"
  235. 0 1031 "{2}"
  236. 5 1
  237. 15
  238. 9
  239. 5 0
  240. 0 781 "{3}"
  241. 13
  242. 18 0
  243. 11 00000262
  244. 16 tryit "" "{1}"
  245. 13
  246. 5 31
  247. 18 3
  248. 11 00000262
  249. 5 1
  250. 15
  251. 9
  252. 16 getprofile "{2}"
  253. 13
  254. 16 tryit [X] "{1}"
  255. 13
  256. 5 31
  257. 18 3
  258. 11 00000348
  259. 5 1
  260. 15
  261. 9
  262. 16 missouri "{1}"
  263. 13
  264. 0 805 &4 [X]
  265. 13
  266. 5 0
  267. 18 1
  268. 11 00000519
  269. 16 tryit "{4}" "{1}"
  270. 13
  271. 5 31
  272. 18 3
  273. 11 00000506
  274. 16 writeprofile "{4}" "{2}"
  275. 10 00000519
  276. 10 00000348
  277. 6 0
  278. 15
  279. 9
  280. 14 tryit
  281. 0 781 "{0}"
  282. 0 16 "{0}" "{1}"
  283. 13
  284. 0 22 [X] ""
  285. 13
  286. 15
  287. 9
  288. 6 2
  289. 15
  290. 9
  291. 14 writeprofile
  292. 0 287 "LotusApps" "{1}" "{0}" "amipro2.ini"
  293. 6 2
  294. 15
  295. 9
  296. 14 getprofile
  297. 0 286 "LotusApps" "{0}" "amipro2.ini"
  298. 13
  299. 0 805 &2 [X]
  300. 13
  301. 7 ""
  302. 18 1
  303. 11 00000113
  304. 6 2
  305. 15
  306. 9
  307. 0 286 "LotusApps" "{0}" "amipro.ini"
  308. 13
  309. 15
  310. 9
  311. 6 1
  312. 15
  313. 9
  314. 14 missouri
  315. 0 31 9001 "*.exe"
  316. 0 31 8007 "{0}"
  317. 0 26 "." "findapp"
  318. 13
  319. 0 805 &2 [X]
  320. 13
  321. 5 1
  322. 18 1
  323. 11 00000127
  324. 5 0
  325. 15
  326. 9
  327. 0 290
  328. 13
  329. 15
  330. 9
  331. 6 1
  332. 15
  333. 9
  334. DIALOG findapp
  335. -2134376448 7 70 35 200 97 "" "" "Find Application" 
  336. FONT 8 "Helv" 
  337. 7 34 59 8 1000 1342177280 "static" "&Program path:" 0 
  338. 6 45 60 44 9001 1352728579 "listbox" "" 0 
  339. 155 5 40 14 1 1342373889 "button" "OK" 0 
  340. 155 21 40 14 2 1342373888 "button" "Cancel" 0 
  341. 68 34 80 8 7999 1342177280 "static" "" 0 
  342. 7 6 142 9 1006 1342177280 "static" "Change into the directory that contains" 0 
  343. 7 16 107 8 8007 1342177280 "static" "" 0 
  344. 00003883
  345.