![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Может у кого есть исходники Удаленного управления рабочим столом??Нужно только видеть рабочий стол, управлять мышкой,клавой.
В гугл не отпровлять уже все перегуглил нашел 1 вариант более рабочий,НО он не конектится((( Исходники |
|
#2
|
||||
|
||||
|
Admin выкладывал, ищи
|
|
#3
|
|||
|
|||
|
Разобрался с иходником!Работает только с XP с семеркой не хочет((Подскажите что делать?
|
|
#4
|
||||
|
||||
|
|
|
#5
|
|||
|
|||
|
Так я эти исходники ковыряю!!К семерке не конектится(((Управление мышкой клавой нет(((
|
|
#6
|
||||
|
||||
|
Цитата:
|
|
#7
|
|||
|
|||
|
Уважаемый Admin!Вы можете выложить исходнки с управлением рабочим столом(мышь,клавиатура)?
Буду очень благодарен! Последний раз редактировалось Mitiay, 07.12.2012 в 18:40. |
|
#8
|
||||
|
||||
|
Цитата:
|
|
#9
|
|||
|
|||
|
Дак в нете даже примеров подобных примеров нет((((
|
|
#10
|
|||
|
|||
|
1000 руб дам за управление мышкой и клавой.
|
|
#11
|
|||
|
|||
|
Код:
unit Main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls,
OverbyteIcsWndControl, OverbyteIcsWSocket, OverbyteIcsWSocketS,
ScreenSpy;
type
TfrmMain = class(TForm)
pnlA: TPanel;
btnabout: TSpeedButton;
mmoA: TMemo;
lblA: TLabel;
tmrA: TTimer;
procedure FormCreate(Sender: TObject);
procedure btnAboutClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure wscksAClientConnect(Sender: TObject; Client: TWSocketClient; Error: Word);
procedure wscksAClientDisconnect(Sender: TObject; Client: TWSocketClient; Error: Word);
procedure tmrATimer(Sender: TObject);
private
public
end;
TMyClient = class(TWSocketClient)
protected
FScrSpy: TScreenSpy;
FPos: Integer;
FCmd: array[0..SizeOf(TCtlCmd) - 1] of Byte;
//
procedure Error(Sender: TObject);
procedure DataAvailable(Sender: TObject; ErrCode: Word);
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
//
property ScrSpy: TScreenSpy read FScrSpy;
end;
var
frmMain: TfrmMain;
implementation
{$R *.dfm}
procedure TfrmMain.FormCreate(Sender: TObject);
begin
try
with wscksA do
begin
ClientClass := TMyClient;
BannerTooBusy := '';
Banner := '';
Addr := '0.0.0.0';
Port := '9000';
Listen;
end;
mmoA.Lines.Add('Waiting...');
except on e: Exception do
begin
ShowMessage(e.Message);
Application.Terminate;
end;
end;
end;
procedure TfrmMain.FormClose(Sender: TObject; var Action: TCloseAction);
var
i: Integer;
begin
wscksA.Close;
for i := 0 to wscksA.ClientCount - 1 do wscksA.Client[i].Close;
end;
procedure TfrmMain.btnAboutClick(Sender: TObject);
const
ICO_INFO = MB_OK or MB_ICONINFORMATION or MB_TOPMOST;
DEM_CAP = 'DGScreenSpy v0.6b';
DEF_MSG = 'DGScreenSpy v0.6b, By BCB-DG' + #13#13
+ 'EMail: iamgyg@163.com QQ: 112275024' + #13#13
+ 'Blog: http://iamgyg.blog.163.com/';
begin
MessageBox(Handle, DEF_MSG, DEM_CAP, ICO_INFO);
end;
procedure TfrmMain.wscksAClientConnect(Sender: TObject; Client: TWSocketClient; Error: Word);
begin
mmoA.Lines.Add('Connect From:' + Client.PeerAddr);
end;
procedure TfrmMain.wscksAClientDisconnect(Sender: TObject; Client: TWSocketClient; Error: Word);
begin
mmoA.Lines.Add('Disconnect From:' + Client.PeerAddr);
end;
procedure TfrmMain.tmrATimer(Sender: TObject);
begin
lblA.Caption := 'Client Count: ' + IntToStr(wscksA.ClientCount);
end;
constructor TMyClient.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
OnDataAvailable := DataAvailable;
OnError := Error;
//
FScrSpy := TScreenSpy.Create;
FScrSpy.Socket := Self;
FPos := 0;
end;
destructor TMyClient.Destroy;
begin
FScrSpy.Terminate;
inherited;
end;
procedure TMyClient.Error(Sender: TObject);
begin
CloseDelayed;
end;
procedure TMyClient.DataAvailable(Sender: TObject; ErrCode: Word);
var
nLen: Integer;
begin
nLen := Receive(@FCmd[FPos], SizeOf(TCtlCmd) - FPos);
if (nLen > 0) then
begin
Inc(FPos, nLen);
if (FPos = SizeOf(TCtlCmd)) then
begin
FPos := 0;
try
if TCtlCmd(FCmd).Cmd in [11..17] then SetCursorPos(TCtlCmd(FCmd).X, TCtlCmd(FCmd).Y);
case TCtlCmd(FCmd).Cmd of
01:
begin
FScrSpy.PixelFormat := TPixelFormat(TCtlCmd(FCmd).X);
FScrSpy.Resume;
end;
11: ;//mouse move
12: mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
13: mouse_event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0);
14: mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
15: mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0);
16: mouse_event(MOUSEEVENTF_WHEEL, 0, 0, 4294967176, 0);
17: mouse_event(MOUSEEVENTF_WHEEL, 0, 0, 120, 0);
18: keybd_event(Byte(TCtlCmd(FCmd).X), MapVirtualKey(Byte(TCtlCmd(FCmd).X), 0), 0, 0);
19: keybd_event(Byte(TCtlCmd(FCmd).X), MapVirtualKey(Byte(TCtlCmd(FCmd).X), 0), 2, 0);
end;
except
end;
end;
end;
end;
end.Ругается на эту строчку with wscksA do Уже все перепробывал!Компоненты установил.Помогите! Последний раз редактировалось Mitiay, 09.12.2012 в 14:00. |
|
#12
|
|||
|
|||
|
Цитата:
p.s. если ты считаешь это оскорблением а не констатацией факта, значит я был прав |
|
#13
|
||||
|
||||
|
Цитата:
ПС. Вообще если нечего сказать по сути, то лучше пройти мимо и не разводить флуд. |
| Эти 4 пользователя(ей) сказали Спасибо Admin за это полезное сообщение: | ||
M.A.D.M.A.N. (09.12.2012),
nixel (11.12.2012),
PhoeniX (09.12.2012),
YVitaliy (09.12.2012)
| ||
|
#14
|
||||
|
||||
|
Админ, насколько я помню, он уже получал банан в зубы за подобное
Может, стоило ему дать больше времени на подумать? ![]() Хотя, в одном robt (о б-же) прав - действительно, стоило сказать номер и текст ошибки. Дежурный телепат форума в отпуске. |