Jag försöker använda följande kod för att starta en process och plocka ut processID för den processen. >2. Process id ändrar sig för varje gång jag kör min kod även om start.exe redan är öppet. Men tittar jag i SPY++ så har inte process ID ändrat sig. Vilket ska jag lita på? Men det startas inte två processer. Det som händer är att den befintliga placeras överst på skrivbordet och att id ändras i mitt program men inte i spy++ Då är väl programmet designat så att det bara tillåter en instans åt gången. Så den nya processen bara aktiverar den tidigare och avslutas sedan. Men varför ändrars inte processid i Spy++ utan bara i min ovanstående kod? Har tryckt F5 i Spy++ ;-)Starta en process på datorn.
<code>
Process myProcess = new Process();
myProcess.StartInfo.FileName = @"C:\Program Files\Programmet\start.exe";
myProcess.Start();
int processID = myProcess.Id;
textBox1.Text = processID.ToString();
</code>
Detta tycks medföra två problem som jag undrar om ni kan hjälpa mig med.
1. När jag kör programmet startas mycket riktigt start.exe men ett antal felmeddelanden dycker upp och klagar på att jag har för lite minne för att ladda de nödvändiga bitmapparna. När jag sekunden senare klickar manuellt på start.exe funkar det perfekt.
2. Process id ändrar sig för varje gång jag kör min kod även om start.exe redan är öppet. Men tittar jag i SPY++ så har inte process ID ändrat sig. Vilket ska jag lita på?
MVH HenkeSv: Starta en process på datorn.
Varje ny process du startar får ett eget ID nummer. Men det påverkar inte ID hos de processer som redan körs. Så du kan väl lita på båda.
MSSv: Starta en process på datorn.
Sv: Starta en process på datorn.
MSSv: Starta en process på datorn.