Rev 82 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 82 | Rev 85 | ||
---|---|---|---|
Line 35... | Line 35... | ||
35 | implementation |
35 | implementation |
36 | 36 | ||
37 | {$R *.dfm} |
37 | {$R *.dfm} |
38 | 38 | ||
39 | uses |
39 | uses |
40 | UD2_Utils, UD2_Main, ShellAPI; |
40 | UD2_Utils, UD2_Main, UD2_Parsing, ShellAPI; |
41 | 41 | ||
42 | procedure TUD2TaskPropertiesForm.LoadExecutableFilesList; |
42 | procedure TUD2TaskPropertiesForm.LoadExecutableFilesList; |
43 | resourcestring |
43 | resourcestring |
44 | LNG_RIOD = 'Run in own directory'; |
44 | LNG_RIOD = 'Run in own directory'; |
45 | LNG_ADMIN = 'Run as admin'; |
45 | LNG_ADMIN = 'Run as admin'; |
46 | var |
46 | var |
47 | sl: TStringList; |
- | |
48 | i: integer; |
47 | i: integer; |
49 | cmdLine, flags: string; |
48 | flags: string; |
- | 49 | cmds: TUD2CommandArray; |
|
- | 50 | cmd: TUD2Command; |
|
50 | begin |
51 | begin |
51 | //fud2.GetCommandList(AShortTaskName, ListBox1.Items); |
52 | //fud2.GetCommandList(AShortTaskName, ListBox1.Items); |
52 | 53 | ||
53 | ListBox1.Clear; |
54 | ListBox1.Clear; |
54 | sl := TStringList.Create; |
- | |
55 | try |
- | |
56 | fud2.GetCommandList(FShortTaskName, sl); |
55 | cmds := fud2.GetCommandList(FShortTaskName); |
- | 56 | ||
57 | for i := 0 to sl.Count-1 do |
57 | for i := Low(cmds) to High(cmds) do |
58 | begin |
58 | begin |
59 | cmdLine := sl.Strings[i]; |
59 | cmd := cmds[i]; |
- | 60 | ||
60 | flags := ''; |
61 | flags := ''; |
61 | 62 | ||
62 | if Pos(UD2_RUN_AS_ADMIN, cmdLine) >= 1 then |
63 | if cmd.runAsAdmin then |
63 | begin |
64 | begin |
64 | cmdLine := StringReplace(cmdLine, UD2_RUN_AS_ADMIN, '', [rfReplaceAll]); |
- | |
65 | if flags <> '' then flags := flags + ', '; |
65 | if flags <> '' then flags := flags + ', '; |
66 | flags := flags + LNG_ADMIN; |
66 | flags := flags + LNG_ADMIN; |
67 | end; |
67 | end; |
68 | 68 | ||
69 | if Pos(UD2_RUN_IN_OWN_DIRECTORY_PREFIX, cmdLine) >= 1 then |
69 | if cmd.runInOwnDirectory then |
70 | begin |
70 | begin |
71 | cmdLine := StringReplace(cmdLine, UD2_RUN_IN_OWN_DIRECTORY_PREFIX, '', [rfReplaceAll]); |
- | |
72 | if flags <> '' then flags := flags + ', '; |
71 | if flags <> '' then flags := flags + ', '; |
73 | flags := flags + LNG_RIOD; |
72 | flags := flags + LNG_RIOD; |
74 | end; |
73 | end; |
75 | 74 | ||
76 | if flags <> '' then |
75 | if flags <> '' then |
77 | begin |
76 | begin |
78 | flags := ' [' + flags + ']'; |
77 | flags := ' [' + flags + ']'; |
79 | end; |
78 | end; |
80 | 79 | ||
81 | ListBox1.Items.Add(cmdLine + flags); |
80 | ListBox1.Items.Add(cmd.executable + flags); |
82 | end; |
- | |
83 | finally |
- | |
84 | sl.Free; |
- | |
85 | end; |
81 | end; |
86 | end; |
82 | end; |
87 | 83 | ||
88 | procedure TUD2TaskPropertiesForm.LoadIcon; |
84 | procedure TUD2TaskPropertiesForm.LoadIcon; |
89 | var |
85 | var |
Line 132... | Line 128... | ||
132 | begin |
128 | begin |
133 | Close; |
129 | Close; |
134 | end; |
130 | end; |
135 | 131 | ||
136 | procedure TUD2TaskPropertiesForm.Button1Click(Sender: TObject); |
132 | procedure TUD2TaskPropertiesForm.Button1Click(Sender: TObject); |
- | 133 | var |
|
- | 134 | cmd: TUD2Command; |
|
137 | begin |
135 | begin |
- | 136 | cmd.executable := fud2.IniFileName; |
|
- | 137 | cmd.runAsAdmin := false; |
|
- | 138 | cmd.runInOwnDirectory := false; |
|
138 | UD2_RunCMD(fud2.IniFileName, SW_NORMAL); |
139 | cmd.windowMode := SW_NORMAL; |
- | 140 | UD2_RunCMD(cmd); |
|
139 | end; |
141 | end; |
140 | 142 | ||
141 | end. |
143 | end. |