Automatyczne czyszczenie martwych procesów

0

Witam mam taki tyci tyci problem. Napisalem program w c++ (prosty) w oparciu o 2 pliki vbs. Program wyglada tak:

#include <cstdlib>
#include <iostream>
using namespace std;
int x,i;
int main()
{
for(;;)
    {
    cout<<"Otworz? Zamknij?"<<"\n";
    cout<<"1 - Otworz, 2 - Zamknij, 3 - Koniec"<<"\n";
    cin>>x;
    if (x==1)
    {
    system("start Otwórz.vbs");
    }
    if (x==2)
    {
    system("start Zamknij.vbs");
    }
    if (x==3)
    {
    break;         
    }
}
system("PAUSE");
    return 0;
}

I tutaj mam problem, gdy ktos dluzej "pobawi" sie tym progsem to w menedżerze urządzeń ma kilkanaście procesów wscript.exe... a to zamula kompa i pozniej sa tez problemy z wylaczeniem kompa. Zna ktos metode na automatyczne usuniecie tych procesow? Ew. wybieranie opcji "czysc"? moze byc np tak ze podlaczy sie jakis srypt (np. vbs) ktory czysci takie cos... szukam i szukam juz ponad godzine i nic:/ a moze jakies inne pomysly? Wiem ze ta sie zrobic inaczej z wysuwaniem i wsuwaniem tacki napedu ale zalezy mi zeby zostaly te vbsy... dam jeszcze skrypty vbs jak cos:
otwiera

Set oWMP = CreateObject("WMPlayer.OCX.7" )
Set colCDROMs = oWMP.cdromCollection
if colCDROMs.Count >= 1 then
For i = 1 to colCDROMs.Count - 1
colCDROMs.Item(i).Eject
Next ' cdrom
End If

zamyka:

Set oWMP = CreateObject("WMPlayer.OCX.7" )
Set colCDROMs = oWMP.cdromCollection
if colCDROMs.Count >= 1 then
For i = 1 to colCDROMs.Count - 1
colCDROMs.Item(1).Eject
Next ' cdrom
End If
0

problem nie leży w c++, bo u mnie proces wscript wisi zawsze po uruchomieniu skryptu. To pliki vbs same w sobie powodują problem, a dokładniej, to pewnie zły w nich kod. Na pewno masz źle pętle for,
masz przeglądać od 0,
item(i), a nie item(1)

ale to szczegół, wiele nie zmienia - dalej metoda eject 'wiesza' (taa, właśnie ona). nie przeglądałem dokładnie dokumentacji MSDN o tej kontrolce activeX (msdn: WMPlayer) - może tam będą wskazówki, jak z nią wygrać.

0

Poza tym po co ci program do odpalania skryptu ? Umieść wszystko w jednym skrypcie i jego odpalaj.

1 użytkowników online, w tym zalogowanych: 0, gości: 1