Korzystanie z programów za pomocą delphi

Odpowiedz Nowy wątek
2011-08-05 09:26
0

Witam prosiłbym o pomoc :) Przykładowo mamy przeglądarke opera. Jak zrobić aby program gdy klikne właczał opere a potem wpisywał w nową karte np. 4programmers.net ? Czy trzeba tutaj pakietamy się pobawić czy inny sposób?

// edit
aha i nie chodzi mi o przeglądarke domyślną, że na jakiś link wchodzi tylko o to że moge sobie zmieniać adresy itd.

edytowany 1x, ostatnio: Nitro Cee, 2011-08-05 09:41

Pozostało 580 znaków

2011-08-05 09:52
0
ShellExecute(Handle, 'open', 'http://4programmers.net', nil, nil, SW_SHOW);

char mander; bool basaur;
Uprzedzam pytanie, dodaj ShellAPI do uses. - TomRiddle 2011-08-05 09:53
Nitro Cee napisał "nie chodzi mi o przeglądarke domyślną" - pelsta 2011-08-05 10:23
Nie doczytałem. - TomRiddle 2011-08-05 10:41

Pozostało 580 znaków

2011-08-05 11:55
0

O tóż to nie chodzi o to, chodzi o to że chce sterować przykładowo operą, np zmieniam opcje itd.

Pozostało 580 znaków

2011-08-05 12:44
0

Możesz np.:sterować myszką, czy wysyłać do aplikacji komunikaty, lecz i tak nie widzę w tym wszystkim sensu.
Czy możesz nam zdradzić po co Tobie takie coś?


edytowany 1x, ostatnio: Patryk27, 2011-08-05 12:44
Przecież wiadomo po co - Chakierowanie! Jeśli chodzi o opcje: Łatwiej plik konfiguracji zmienić. - payl 2011-08-05 15:57

Pozostało 580 znaków

2011-08-05 16:34
0

żeby np. bota do gry przeglądarkowej

Pozostało 580 znaków

2011-08-05 16:39
0

Do takiego czegoś nadawałby się program Tasker. Albo komunikacja przez HTTP bez użycia przeglądarki, ale to już trudniejsza sprawa.

edytowany 1x, ostatnio: krupnick, 2011-08-05 16:40

Pozostało 580 znaków

2011-08-05 17:08
1

Kombinujecie jak koń pod górę. Przecież od dawna wiadomo, że istnieje "takie coś" jak DDE i przy pomocy niego można odczytać dane aktywnej zakładki przez odpowiednie wywołanie WWW_GetWindowInfo, a wiedząc to możemy poszukać w google innych informacji i natrafiamy na info o Bugu w przeglądarkach związanym z metodą DDE o nazwie WWW_OpenURL. Mając tak wiele mówiącą nazwę wyszukujemy: delphi WWW_OpenURL i wszystko jasne. Ludziki "Pytacze": ja wiem i rozumiem, że dział Newbie, że wakacje, że w niektórych rejonach upalnie itd, itp, ale troszkę samodzielności i logicznego myślenia bym prosił. Macie mózgi to z nich korzystajcie póki Was starość nie dopadnie i z kondycją umysłową będzie gorzej :) I dodam, że żadne wysyłanie komunikatów do okna Opery nie ma sensu, bo została ona w taki sposób stworzona, że całe jej okno jest pod jedną klasą, nie ma jak IE wydzielonych kontrolek. W takich przypadkach wiadomo, że skoro inne, starsze przeglądarki mają taką możliwość to i tutaj nalezy skorzystać z DDE (http://pl.wikipedia.org/wiki/Dynamic_Data_Exchange).

uses
  DDEMan;
 
procedure SetURL(Service, Url : string);
var
  DDEClient : TDDEClientConv;
begin
  DDEClient := TDDEClientConv.Create(nil);
  with DDEClient do
  begin
    SetLink(Service, 'WWW_OpenURL');
    RequestData(URL + ',,0x0,0x0');
    CloseLink;
  end;
  DDEClient.Free;
end;

Użycie dla Opery i strony głownej serwisu 4p:

  SetURL('Opera', 'http://4programmers.net');

edytowany 3x, ostatnio: olesio, 2011-08-05 17:13
Te Twoje złote myśli :D "Macie mózgi to z nich korzystajcie póki Was starość nie dopadnie i z kondycją umysłową będzie gorzej" - payl 2011-08-05 18:28

Pozostało 580 znaków

2011-08-05 17:56
0

ale zupełnie nie chodzi o to, otwarcie strony dałem za przykład... chce po prostu sterować innym programem za pomocą mojego programu w tym przypadku chce sterować operą

No to robisz zdarzenia myszy i klawiatury - po prostu symulujesz użytkownika, inaczej się nie da. - payl 2011-08-05 18:27

Pozostało 580 znaków

2011-08-05 18:27
0

No a co Opera miała by robić? Nie posterujesz nią na pewno za pomocą komunikatów, bo jak wspomniałem całe okno robocze Opery jest pod jednym uchwytem oraz klasą i nie przyjmuje standardowych komunikatów. Jak chcesz się logować na jakąs stronę albo ją odwiedzać i nie potrzebny jest Tobie JavaScript do tego to polecam oczywiście Synapse. Jednak jeżeli potrzebny jest JavaScript to pozostaje raczej użycie TWebBrowser albo zainstalowanie FireFoxa i zainstalowanie kontrolki ActiveX, która z niego korzysta, tak jak TWebBrowser z IE. Jednak w tym drugim przypadku nie za bardzo pomogę, bo do tej pory w swoich aplikacjach internetowych do obslugi protokołu HTTP starałem się korzystać z Synapse i nie potrzebowałem obsługi JavaScript. Możesz kombinować z kontrolkami ActiveX bazujących właśnie na silnikach IE albo FireFoxa lub da się chyba jeszcze z Chrome. Szczegóły to może ktoś inny Tobie podpowie albo sobie spróbujesz wygooglować jakieś informacje. Podstawowe rzeczy jak odczytanie nazwy zakładki i adresu lub otwarcie strony pod Operą da się zrobić, tak jak wspomniałem przez DDE, ale kompletnego sterowania bym się nie spodziewał. Bo przeglądarka internetowa jest raczej po to aby to użytkownik nią się posługiwał, a nie robiło to za niego oprogramowane, które może być na przykład jakimś malware, co grozi bezpieczeństwu.

EDIT: albo tak jak napisał payl symulowanie klawiatury oraz myszki, tylko że jak wspomniałem Opera jest reprezentowana przez jeden uchwyt i klasę okna, więc ciężko określić położenie na różnych rozdzielczościach ekranu elementow przeglądarki. A i samej strony internetowej - nie będzie za łatwe.


edytowany 1x, ostatnio: olesio, 2011-08-05 18:29

Pozostało 580 znaków

2011-08-05 21:20
0

A przykładowo bot do gry mmprpg działa za pomocą pakietów, da się tak zrobić?

Pakietów? Czy mu chodzi o te pakiety o których ja myślę i mogę go wyśmiać? :D - payl 2011-08-05 21:34

Pozostało 580 znaków

2011-08-07 13:05
0

Chce po prostu jakimś programem sprawdzać pakiety czy też funkcje jakieś i potem to zrobić programowo w delphi, np. przycisk wstecz itd.

A Ty wiesz jak działają przeglądarki internetowe? Chcesz do nich pisać exploita? No to pisz, ale my Ci nie pomożemy w tym. Ciągle Ci chodzi o nie wiadomo co, możesz użyć TWebBrowser, albo po prostu czegoś do pobierania HTML i napisać własny silnik symulujący przeglądarkę. Możesz też napisać exploita. Noting is impossible jak to mówią. Ale jak wskazują Twoje "pakiety" to niestety Ty nie umiesz czegoś takiego napisać. - payl 2011-08-07 15:47
Mówią "Impossible is Nothing". - TomRiddle 2011-08-19 09:48

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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