Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Aplikacja działająca w tle w C++

07 Mar 2005 01:06 6615 9
  • Poziom 2  
    Czy ktoś wie jak napisać progza w C++ który będzie działał jako proces (w tle)?
  • Poziom 24  
    W Builderze? Jest taki komponent.
  • Poziom 19  
    A w *nixach wystarczy dopisac ampersanda ("&") na koncu linii polecen. Program oda razu zostanie uruchomiony w tle. Oznacza to m.in. brak bezposredniego podlaczenia do terminala i koniecznosc przywracania programu do dzialania "z przodu" odpowiednimi poleceniami powloki.
  • Poziom 10  
    Witam :)
    Od ponad 4 lat nie pracuje na Windowsie. Niestety ostatnio muszę napisać aplikację konsolową w C++, która po uruchomieniu działa w tle i co określony czas wykonuje zadanie. No i mam problem. Nie wiem jak wysłać w tło aplikację tak by okienko cmd.exe było niewidoczne po jej uruchomieniu. Zaczynam czytać coś RegisterServiceProcess ale nie idzie mi to za bardzo. Chodzi o to, aby działało to pod XPkiem. Macie jakieś pomysły?
  • Poziom 14  
    Rozwiazanie jest bardzo proste, ustaw sobie w dev-cpp Aplikacja okienkowa, wywal z tego wszystko co zwiazane jest z okienkiem. Dodaj do niego nieskonczona petle. Odpal go, zagladnij w liste procesow.... ooo jest:)
    Jeszcze prostsze rozwiazanie lecz bardziej syfiaste;

    Odpal dev-cpp wez aplikacja okienkowa, wez w komentarz funkcje ShowWindow(); czy jak tam jej:D dodaj nieskonczona petle na koncu programu.

    Trzecie rozwiazanie poprostu dodaj nieskonczoan petle na poczatku programu ( przed pokazaniem okienka )

    Nieskonczona petla jest po to zebysmy widzieli jak program dziala w tle, bo w przeciwnym wypadku odrazu sie zamknie.

    Jezeli chcemy zeby nasz proces byl nie widoczny w tle, nalezy uzyc jeszcze do tego rootkita, kody zrodlowe takowych sa juz powszechnie dostepne w internecie wiec nie stanowi to wiekszego problemu, lecz odkrycie rootkita tez nie stanowi wiekszego problemu dla niektorych antywirusow, polcem FU Rootkit.
  • Poziom 10  
    Super :) Tzn, nie wiem co i jak dużo skasować z tego kodu WIN API, ale za komentowanie ShowWindow(); jak na razie działa.

    Niestety nie wiem czy uda mi się przenieść kod z konsoli na WIN API. cout, cin i całą resztę.

    Procesy może a nawet powinien być widoczny w liście procesów. Piszę aplikację, która monitoruje parametry pracy systemu ;-)
  • Poziom 14  
    Paszczak000 napisał:
    Super :) Tzn, nie wiem co i jak dużo skasować z tego kodu WIN API, ale za komentowanie ShowWindow(); jak na razie działa.

    Niestety nie wiem czy uda mi się przenieść kod z konsoli na WIN API. cout, cin i całą resztę.

    Procesy może a nawet powinien być widoczny w liście procesów. Piszę aplikację, która monitoruje parametry pracy systemu ;-)


    Z Winapi mozesz usunac wszystko :D zostaw sobie tylko #include <windows.h> using namespace std; i funkcje main.

    A tak w ogole to po co Ci cin i cout w programie monitorujacym prace systemu?
  • Poziom 10  
    Aplikacja jest pod Linuksa i pod Windowsa. Poza monitorowaniem posiada jakieś tam parametry
    Code:
    binarka /update

    i się aktualizuje i zwraca na konsolę wynik po czym się zamyka :)

    samo windows.h nic nie da. Musi być jakaś funkcja by wygenerować okienko.
  • Poziom 14  
    Paszczak000 napisał:
    Aplikacja jest pod Linuksa i pod Windowsa. Poza monitorowaniem posiada jakieś tam parametry
    Code:
    binarka /update

    i się aktualizuje i zwraca na konsolę wynik po czym się zamyka :)

    samo windows.h nic nie da. Musi być jakaś funkcja by wygenerować okienko.


    Code:

    #include <windows.h>

    int main(void)
    {
        while(true) {}
        return 0;   
    }

    To wystarczy

    Na dodatek nie widze zadnych danych wejsciowych dla programu monitorujacego, config moze znajdowac sie w pliku. A wyniki programu moga leciec prosto do bazy danych.