Usługi windows - Błąd 1067 przy dostępie do funkcji członkowskiej ->at wskaźnika na vector

0

Cześć!

Piszę usługę na serwer. W funkcji sortującej mam warunek:

if (listaPlikow->at(kolejnosc[i]).GetNazwaPliku() > listaPlikow->at(kolejnosc[i+1]).GetNazwaPliku())

listaPlikow jest wskaźnikiem na vector obiektów typu dane pliku, kolejnosc jest to vector <unsigned long="long">

Problem leży w tym, że jeśli plik skompiluje bez fragmentu odpowiedzialnego za działanie jako usługa, to program jest wykonywany bez zarzutu. Jeżeli program skompiluje z częścią odpowiedzialną za usługę i uruchomię jako usługę, to w momencie ewaluacji tego warunku program kończy się z kodem 1067 (program zakończył się niespodziewanie).

Ma ktoś może pomysł dlaczego tak się może dziać?

0

Bez żadnych szczegółów: Jesteś pewien, że tutaj: kolejnosc[i+1] nie wykraczasz poza zakres tego vectora?
Spróbuj zrobić to samo, ale wykorzystując kolejność.at(i+1), ponieważ vector.at() rzuca wyjątek przy wyjściu poza zakres.

0

Dzięki, rzeczywiście jest to spowodowane pustym wektorem, który został spowodowany brakiem uprawnień do dostępu do udziału sieciowego z konta, na którym uruchamiana jest usługa.

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