|
| winexec?? Fra : cc |
Dato : 12-06-01 14:07 |
|
Hejsa
JEg sider og roder med med WinExec. Jeg skal have den til at udføre et
program med en variabel som parmeter..
nogen ideer til hvordan jeg får det til at virker.
Har rodet med nedstående men uden helt. den udføre kun programmet uden at
tage parmeteren med..
Hvad kan man gøre ved det??
test.exe skal udføres med den parmeter der nu må ligge i variablen
"indhold"...
--snip
testfile.SeekToBegin();
xxx=testfile.ReadString(indhold);
while (xxx)
{
WinExec("c:\\test\\test.exe , indhold ",SW_SHOW);
xxx=testfile.ReadString(indhold);
}
--snap
Mvh
Tommy
| |
Michael Rasmussen (12-06-2001)
| Kommentar Fra : Michael Rasmussen |
Dato : 12-06-01 20:54 |
|
"cc" <the_only_dj_cool@hotmail.com> wrote in message
news:9g538j$mb0$1@newstoo.ericsson.se...
> testfile.SeekToBegin();
> xxx=testfile.ReadString(indhold);
> while (xxx)
> {
> WinExec("c:\\test\\test.exe , indhold ",SW_SHOW);
> xxx=testfile.ReadString(indhold);
> }
char tmpbuffer[EN_ELLER_ANDEN_PASSENDE_LAENGDE];
wsprintf(tmp, "c:\\test\\test.exe %s", indhold);
WinExec(tmp, SW_SHOW);
på din måde eksekverer du c:\test\test.exe med parametren ",indhold" og
ikke,
sådan som du ønsker, med variablen 'indhold's indhold. "indhold" referer
ikke
til variablen af samme navn men er blot en streng.
- Michael Rasmussen
| |
cc (13-06-2001)
| Kommentar Fra : cc |
Dato : 13-06-01 07:47 |
|
Okay tak for det..
Tommy
>
> char tmpbuffer[EN_ELLER_ANDEN_PASSENDE_LAENGDE];
> wsprintf(tmp, "c:\\test\\test.exe %s", indhold);
> WinExec(tmp, SW_SHOW);
>
> på din måde eksekverer du c:\test\test.exe med parametren ",indhold" og
> ikke,
> sådan som du ønsker, med variablen 'indhold's indhold. "indhold" referer
> ikke
> til variablen af samme navn men er blot en streng.
>
> - Michael Rasmussen
>
>
| |
cc (13-06-2001)
| Kommentar Fra : cc |
Dato : 13-06-01 09:31 |
|
Lige et andet spørgsmål til det....
ër det ikke muligt at skjule den dos box der kommer op når man eksikvere
det?
bruger jeg SW_HIDE så forsvinder det vindue hvor jobbet som commandoen
starter også og det skal den helst ikke men kun dos vinduet..
Nogen ide??
Tommy
> > testfile.SeekToBegin();
> > xxx=testfile.ReadString(indhold);
> > while (xxx)
> > {
> > WinExec("c:\\test\\test.exe , indhold ",SW_SHOW);
> > xxx=testfile.ReadString(indhold);
> > }
>
> char tmpbuffer[EN_ELLER_ANDEN_PASSENDE_LAENGDE];
> wsprintf(tmp, "c:\\test\\test.exe %s", indhold);
> WinExec(tmp, SW_SHOW);
>
> på din måde eksekverer du c:\test\test.exe med parametren ",indhold" og
> ikke,
> sådan som du ønsker, med variablen 'indhold's indhold. "indhold" referer
> ikke
> til variablen af samme navn men er blot en streng.
>
> - Michael Rasmussen
>
>
| |
Michael Rasmussen (13-06-2001)
| Kommentar Fra : Michael Rasmussen |
Dato : 13-06-01 23:34 |
|
"cc" <the_only_dj_cool@hotmail.com> wrote in message
news:9g77f2$d8o$1@newstoo.ericsson.se...
> Lige et andet spørgsmål til det....
>
> ër det ikke muligt at skjule den dos box der kommer op når man eksikvere
> det?
> bruger jeg SW_HIDE så forsvinder det vindue hvor jobbet som commandoen
> starter også og det skal den helst ikke men kun dos vinduet..
>
> Nogen ide??
>
> Tommy
MSDN siger:
"Note This function is provided only for compatibility with 16-bit Windows.
Win32-based applications should use the CreateProcess function."
så du skal nok bruge CreateProcess for at få den til at forsvinde, der får
du også en
masse options at vælge imellem når du skal starte din applikation, og der er
også
funktioner der lader dig være en anden bruger når du kører applikationen
o.s.v.
alt i alt: drop WinExec().
- Michael Rasmussen
| |
|
|