Sterowanie programem

0

Mam pytanko.
czy moge sterować komponentami programu z poziomu innego? Oba programy są skompliowane.
Chodzi mi że naprzykład z poziomu jednego pliku klikne na przycisk i naprzykład zmieni mi się naprzykład widoczność komponentu w innym programie.

mam nadzieje, że napisałem zrozumiale. W razie nieścisłości piszcie to wyjaśnie dokładniej.
Z hgóry dzięki za informacje [cya] [cya]

0

Myslalem na pocz ze to pq napisal ten post :) Ale mozna tak zrobic jak napsales :) Bo kazdy komponent ma swoj uchwyt no i majac ten uchwyt mozna sie dalej bawic :) A jak zdobyc ten uchwyt no to juz faq i wyszukiwarka :)

0

Myslalem na pocz ze to pq napisal ten post :) Ale mozna tak zrobic jak napsales :) Bo kazdy komponent ma swoj uchwyt no i majac ten uchwyt mozna sie dalej bawic :) A jak zdobyc ten uchwyt no to juz faq i wyszukiwarka :)

Tutaj się nie zgodzę. TComponent i jego potomek TControl' nie mają uchwytów, można się do nich dostać co najwyżej wskaźnikiem. Tylko TWinControl i jego potomne kontrolki mają uchwyt, chyba że ktoś napisze sobie komponent z uchwytem. :-)

0

Hehehe... A nie lepiej przesyłać informacje przez sieć? :-D
Tyle że Client będzie łączył się z serwerem na ip 127.0.0.1...
Poczytaj o programowaniu gniazdek...

0

Hehehe... A nie lepiej przesyłać informacje przez sieć? :-D
Tyle że Client będzie łączył się z serwerem na ip 127.0.0.1...
Poczytaj o programowaniu gniazdek...

ALe czy ma sens i jest możliwe stosowane gniaazdek jeśli oba pliki znajdują się na jednym komputerze ?? Uprzedzam że to nie jest <font size="18"><font color="red">rzaden</span></span> wirus. Chodzi mi, abym mógł np. we wszystkich moich programamch <font color="red">naprzykład</span> jednocześnie mieniać kolor formy itp.
Chyba, że <font size="18"><font color="red">karzdy</span></span> program przerabaiać aby w plikacj ini zapisywał informacje o komponentach które chce zmieniać ? Co sądzicei o tym rozwiązaniu ?? :-)

0

Myśle że poprzez gniazdka będzie łatwiej i szybciej zrobić takie bajery ... ;-)

0

Myśle że poprzez gniazdka będzie łatwiej i szybciej zrobić takie bajery ... ;-)

Czytałem ten artykuł już kilka razy i nie potrafie go zrozumieć ani przenieść tych infrmacji w tym rpogramie. Może jakieś wskazówki ???

0

Heh wskazówek szukasz?
Przecież mówiłem Ci, że musisz poczytać o gniazdkach...
Na 4p są artykuły o gniazdkach np. w dziale delphi.
Musisz poszukać... dobra napiszę Ci przykład ale musisz trochę poczekać bo mam mało czasu... Rozwiązanie zamieszczę w poprawionym poście...

Oto ten tekst (jeżeli go nie rozumiesz to najpierw przeczytaj kurs delphi):

Wstawiasz na formę programu nr1 komponent IdTCPServer (z pakietu Indy, komponenty z innych pakietów mogą mieć drobne różnice). Ustawiasz jego property DefaultPort na jakiś port np. 54321 (shoolbus :-D ) oraz Active na True. W drugim programie wstawiasz komponent IdTCPClient. Ustawiasz mu właściwość Host na 127.0.0.1, a Port na wcześniej wybrany port, tutaj 54321. Teraz wywołujesz procedure:

IdTCPClient1.Connect();

A następnie możesz w wysłać tekst do serwera w programie nr 1 procedurą:

IdTCPClient1.WriteLn('jakis string');

Teraz, aby server odebrał tekst 'jakis string' musisz obsłurzyć jego zdarzenie OnExecute w przykładowy sposób:

procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
var
S : string;
begin
S := AThread.Connection.ReadLn();
if S = 'jakis string' then
ShowMessage('Dostano wiadomosc ' + S);
end;

Przy pomocy gniazdek możesz robić wiele ciekawych rzeczy, choć w różnych komponentach odbywa się to w inny sposób. Polecam natomiast tekst o pisaniu trojanów z 4p -> Dokumentacja. Tam jest bardzo przystępnie wyjaśnione jak to wszystko się robi... Z tym pamiętaj że jeśli programe nie pracuje w internecie musisz pisać ip 127.0.0.1, w przeciwnym wypadku piszesz ip kompa na którym jest serwer tzw możesz wysyłać polecenia do kompa w USA :-)

0

Dzięki nareszcie zakumałem. to co mi napisałest roche mi rozjasniło głowe :d . dzięki wszystkim [cya] [cya]

0

Tak zaciemnionego rozwiązania do tak prostego problemu jeszcze nie widziałem (pomijam konkurs IOCCC). Łączyć się przez gniazdka na jednym kompie w celu przesłania jakiś informacji - no po prostu zostałem rozbrojony user image.

Wystarczyło trochę poszukać - swego czasu trochę naprodukowałem na ten temat: http://4programmers.net/Forum/viewtopic.php?id=24760.

0

ja polecam dde czy jakos tak :P

0

Łączyć się przez gniazdka na jednym kompie w celu przesłania jakiś informacji - no po prostu zostałem rozbrojony.

Tak chyba chodzi XServer i XKlienci D

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