├── .gitattributes
├── .gitignore
├── Fontes Access PC - Delphi 7
├── Bin
│ └── Alerta.wav
├── Cliente
│ ├── Access_PC_Client.cfg
│ ├── Access_PC_Client.dof
│ ├── Access_PC_Client.dpr
│ ├── Access_PC_Client.res
│ ├── Chat.ddp
│ ├── Chat.dfm
│ ├── Chat.pas
│ ├── Conectar.ddp
│ ├── Conectar.dfm
│ ├── Conectar.pas
│ ├── StreamManager.pas
│ ├── UAC.RES
│ ├── UAC.manifest
│ ├── UAC.rc
│ ├── ZLIBEX.pas
│ ├── sndkey32.pas
│ └── zlib
│ │ ├── adler32.obj
│ │ ├── deflate.obj
│ │ ├── infblock.obj
│ │ ├── infcodes.obj
│ │ ├── inffast.obj
│ │ ├── inflate.obj
│ │ ├── inftrees.obj
│ │ ├── infutil.obj
│ │ └── trees.obj
├── Icones
│ ├── Deleket-Sleek-Xp-Basic-Document-Blank.ico
│ ├── Deleket-Sleek-Xp-Basic-Folder-Open.ico
│ ├── Desktop (1).ico
│ ├── Desktop.ico
│ ├── folder_blue.png
│ ├── icone.bmp
│ └── icone2.bmp
├── Servidor
│ ├── Access_PC.cfg
│ ├── Access_PC.dof
│ ├── Access_PC.dpr
│ ├── Access_PC.res
│ ├── Chat.ddp
│ ├── Chat.dfm
│ ├── Chat.pas
│ ├── Desktop_Remoto.ddp
│ ├── Desktop_Remoto.dfm
│ ├── Desktop_Remoto.pas
│ ├── File_Manager.ddp
│ ├── File_Manager.dfm
│ ├── File_Manager.pas
│ ├── Lh5Unit.pas
│ ├── Principal.ddp
│ ├── Principal.dfm
│ ├── Principal.pas
│ ├── StreamManager.pas
│ ├── UAC.RES
│ ├── UAC.manifest
│ ├── UAC.rc
│ ├── ZLIBEX.pas
│ └── zlib
│ │ ├── adler32.obj
│ │ ├── deflate.obj
│ │ ├── infblock.obj
│ │ ├── infcodes.obj
│ │ ├── inffast.obj
│ │ ├── inflate.obj
│ │ ├── inftrees.obj
│ │ ├── infutil.obj
│ │ └── trees.obj
└── Units
│ ├── StreamManager.pas
│ ├── ZLIBEX.pas
│ ├── sndkey32.pas
│ └── zlib
│ ├── adler32.obj
│ ├── deflate.obj
│ ├── infblock.obj
│ ├── infcodes.obj
│ ├── inffast.obj
│ ├── inflate.obj
│ ├── inftrees.obj
│ ├── infutil.obj
│ └── trees.obj
├── Fontes Access PC - Delphi XE5
├── Bin
│ └── Alerta.wav
├── Cliente
│ ├── Access_PC_Client.cfg
│ ├── Access_PC_Client.dof
│ ├── Access_PC_Client.dpr
│ ├── Access_PC_Client.dproj
│ ├── Access_PC_Client.res
│ ├── Access_PC_Client_Icon.ico
│ ├── Chat.ddp
│ ├── Chat.dfm
│ ├── Chat.pas
│ ├── Conectar.ddp
│ ├── Conectar.dfm
│ ├── Conectar.pas
│ ├── StreamManager.pas
│ ├── UAC.RES
│ ├── UAC.manifest
│ ├── UAC.rc
│ ├── ZLIBEX.pas
│ ├── sndkey32.pas
│ └── zlib
│ │ ├── adler32.obj
│ │ ├── deflate.obj
│ │ ├── infblock.obj
│ │ ├── infcodes.obj
│ │ ├── inffast.obj
│ │ ├── inflate.obj
│ │ ├── inftrees.obj
│ │ ├── infutil.obj
│ │ └── trees.obj
├── Icones
│ ├── Deleket-Sleek-Xp-Basic-Document-Blank.ico
│ ├── Deleket-Sleek-Xp-Basic-Folder-Open.ico
│ ├── Desktop (1).ico
│ ├── Desktop.ico
│ ├── folder_blue.png
│ ├── icone.bmp
│ └── icone2.bmp
├── Projeto_Access_PC.groupproj
├── Servidor
│ ├── Access_PC.cfg
│ ├── Access_PC.dof
│ ├── Access_PC.dpr
│ ├── Access_PC.dproj
│ ├── Access_PC.res
│ ├── Access_PC_Icon.ico
│ ├── Chat.ddp
│ ├── Chat.dfm
│ ├── Chat.pas
│ ├── Desktop_Remoto.ddp
│ ├── Desktop_Remoto.dfm
│ ├── Desktop_Remoto.pas
│ ├── File_Manager.ddp
│ ├── File_Manager.dfm
│ ├── File_Manager.pas
│ ├── Lh5Unit.pas
│ ├── Principal.ddp
│ ├── Principal.dfm
│ ├── Principal.pas
│ ├── StreamManager.pas
│ ├── UAC.RES
│ ├── UAC.manifest
│ ├── UAC.rc
│ ├── ZLIBEX.pas
│ └── zlib
│ │ ├── adler32.obj
│ │ ├── deflate.obj
│ │ ├── infblock.obj
│ │ ├── infcodes.obj
│ │ ├── inffast.obj
│ │ ├── inflate.obj
│ │ ├── inftrees.obj
│ │ ├── infutil.obj
│ │ └── trees.obj
└── Units
│ ├── StreamManager.pas
│ ├── ZLIBEX.pas
│ ├── sndkey32.pas
│ └── zlib
│ ├── adler32.obj
│ ├── deflate.obj
│ ├── infblock.obj
│ ├── infcodes.obj
│ ├── inffast.obj
│ ├── inflate.obj
│ ├── inftrees.obj
│ ├── infutil.obj
│ └── trees.obj
├── Informações do Access PC.pdf
└── README.md
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
4 | # Custom for Visual Studio
5 | *.cs diff=csharp
6 |
7 | # Standard to msysgit
8 | *.doc diff=astextplain
9 | *.DOC diff=astextplain
10 | *.docx diff=astextplain
11 | *.DOCX diff=astextplain
12 | *.dot diff=astextplain
13 | *.DOT diff=astextplain
14 | *.pdf diff=astextplain
15 | *.PDF diff=astextplain
16 | *.rtf diff=astextplain
17 | *.RTF diff=astextplain
18 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Windows image file caches
2 | Thumbs.db
3 | ehthumbs.db
4 |
5 | # Folder config file
6 | Desktop.ini
7 |
8 | # Recycle Bin used on file shares
9 | $RECYCLE.BIN/
10 |
11 | # Windows Installer files
12 | *.cab
13 | *.msi
14 | *.msm
15 | *.msp
16 |
17 | # Windows shortcuts
18 | *.lnk
19 |
20 | # =========================
21 | # Operating System Files
22 | # =========================
23 |
24 | # OSX
25 | # =========================
26 |
27 | .DS_Store
28 | .AppleDouble
29 | .LSOverride
30 |
31 | # Thumbnails
32 | ._*
33 |
34 | # Files that might appear on external disk
35 | .Spotlight-V100
36 | .Trashes
37 |
38 | # Directories potentially created on remote AFP share
39 | .AppleDB
40 | .AppleDesktop
41 | Network Trash Folder
42 | Temporary Items
43 | .apdisk
44 |
45 |
46 | # Delphi Files
47 | *.dcu
48 | *.local
49 | *.tvsconfig
50 | *.identcache
51 | __history/
52 |
53 |
54 | # Bin
55 | *.exe
56 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Bin/Alerta.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Bin/Alerta.wav
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/Access_PC_Client.cfg:
--------------------------------------------------------------------------------
1 | -$A8
2 | -$B-
3 | -$C+
4 | -$D+
5 | -$E-
6 | -$F-
7 | -$G+
8 | -$H+
9 | -$I+
10 | -$J-
11 | -$K-
12 | -$L+
13 | -$M-
14 | -$N+
15 | -$O+
16 | -$P+
17 | -$Q-
18 | -$R-
19 | -$S-
20 | -$T-
21 | -$U-
22 | -$V+
23 | -$W-
24 | -$X+
25 | -$YD
26 | -$Z1
27 | -cg
28 | -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
29 | -H+
30 | -W+
31 | -M
32 | -$M16384,1048576
33 | -K$00400000
34 | -E"..\Bin\"
35 | -LE"c:\program files (x86)\borland\delphi7\Projects\Bpl"
36 | -LN"c:\program files (x86)\borland\delphi7\Projects\Bpl"
37 | -w-UNSAFE_TYPE
38 | -w-UNSAFE_CODE
39 | -w-UNSAFE_CAST
40 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/Access_PC_Client.dof:
--------------------------------------------------------------------------------
1 | [FileVersion]
2 | Version=7.0
3 | [Compiler]
4 | A=8
5 | B=0
6 | C=1
7 | D=1
8 | E=0
9 | F=0
10 | G=1
11 | H=1
12 | I=1
13 | J=0
14 | K=0
15 | L=1
16 | M=0
17 | N=1
18 | O=1
19 | P=1
20 | Q=0
21 | R=0
22 | S=0
23 | T=0
24 | U=0
25 | V=1
26 | W=0
27 | X=1
28 | Y=1
29 | Z=1
30 | ShowHints=1
31 | ShowWarnings=1
32 | UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
33 | NamespacePrefix=
34 | SymbolDeprecated=1
35 | SymbolLibrary=1
36 | SymbolPlatform=1
37 | UnitLibrary=1
38 | UnitPlatform=1
39 | UnitDeprecated=1
40 | HResultCompat=1
41 | HidingMember=1
42 | HiddenVirtual=1
43 | Garbage=1
44 | BoundsError=1
45 | ZeroNilCompat=1
46 | StringConstTruncated=1
47 | ForLoopVarVarPar=1
48 | TypedConstVarPar=1
49 | AsgToTypedConst=1
50 | CaseLabelRange=1
51 | ForVariable=1
52 | ConstructingAbstract=1
53 | ComparisonFalse=1
54 | ComparisonTrue=1
55 | ComparingSignedUnsigned=1
56 | CombiningSignedUnsigned=1
57 | UnsupportedConstruct=1
58 | FileOpen=1
59 | FileOpenUnitSrc=1
60 | BadGlobalSymbol=1
61 | DuplicateConstructorDestructor=1
62 | InvalidDirective=1
63 | PackageNoLink=1
64 | PackageThreadVar=1
65 | ImplicitImport=1
66 | HPPEMITIgnored=1
67 | NoRetVal=1
68 | UseBeforeDef=1
69 | ForLoopVarUndef=1
70 | UnitNameMismatch=1
71 | NoCFGFileFound=1
72 | MessageDirective=1
73 | ImplicitVariants=1
74 | UnicodeToLocale=1
75 | LocaleToUnicode=1
76 | ImagebaseMultiple=1
77 | SuspiciousTypecast=1
78 | PrivatePropAccessor=1
79 | UnsafeType=0
80 | UnsafeCode=0
81 | UnsafeCast=0
82 | [Linker]
83 | MapFile=0
84 | OutputObjs=0
85 | ConsoleApp=1
86 | DebugInfo=0
87 | RemoteSymbols=0
88 | MinStackSize=16384
89 | MaxStackSize=1048576
90 | ImageBase=4194304
91 | ExeDescription=
92 | [Directories]
93 | OutputDir=..\Bin\
94 | UnitOutputDir=
95 | PackageDLLOutputDir=
96 | PackageDCPOutputDir=
97 | SearchPath=
98 | Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;dclOfficeXP;CoolTrayIcon_D6plus
99 | Conditionals=
100 | DebugSourceDirs=
101 | UsePackages=0
102 | [Parameters]
103 | RunParams=
104 | HostApplication=
105 | Launcher=
106 | UseLauncher=0
107 | DebugCWD=
108 | [Language]
109 | ActiveLang=
110 | ProjectLang=
111 | RootDir=
112 | [Version Info]
113 | IncludeVerInfo=1
114 | AutoIncBuild=0
115 | MajorVer=1
116 | MinorVer=1
117 | Release=8
118 | Build=27
119 | Debug=0
120 | PreRelease=0
121 | Special=0
122 | Private=0
123 | DLL=0
124 | Locale=1046
125 | CodePage=1252
126 | [Version Info Keys]
127 | CompanyName=Deploy Team
128 | FileDescription=Acesso Remoto
129 | FileVersion=1.1.8.27
130 | InternalName=Access PC
131 | LegalCopyright=Deploy Team
132 | LegalTrademarks=Deploy Team
133 | OriginalFilename=Access PC
134 | ProductName=Access PC
135 | ProductVersion=1.0.0.0
136 | Comments=Acesso Remoto
137 | [HistoryLists\hlUnitAliases]
138 | Count=1
139 | Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
140 | [HistoryLists\hlOutputDirectorry]
141 | Count=1
142 | Item0=..\Bin\
143 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/Access_PC_Client.dpr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/Access_PC_Client.dpr
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/Access_PC_Client.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/Access_PC_Client.res
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/Chat.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/Chat.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/Chat.dfm:
--------------------------------------------------------------------------------
1 | object Form2: TForm2
2 | Left = 553
3 | Top = 144
4 | Width = 573
5 | Height = 287
6 | Caption = 'Access PC - Chat'
7 | Color = clBtnFace
8 | Font.Charset = DEFAULT_CHARSET
9 | Font.Color = clWindowText
10 | Font.Height = -11
11 | Font.Name = 'MS Sans Serif'
12 | Font.Style = []
13 | OldCreateOrder = False
14 | Position = poDesktopCenter
15 | OnClose = FormClose
16 | PixelsPerInch = 96
17 | TextHeight = 13
18 | object Memo2: TMemo
19 | Left = 0
20 | Top = 0
21 | Width = 565
22 | Height = 175
23 | Align = alClient
24 | ReadOnly = True
25 | ScrollBars = ssVertical
26 | TabOrder = 1
27 | end
28 | object Memo1: TMemo
29 | Left = 0
30 | Top = 175
31 | Width = 565
32 | Height = 81
33 | Align = alBottom
34 | ScrollBars = ssVertical
35 | TabOrder = 0
36 | OnKeyDown = Memo1KeyDown
37 | OnKeyUp = Memo1KeyUp
38 | end
39 | end
40 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/Chat.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/Chat.pas
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/Conectar.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/Conectar.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/Conectar.dfm:
--------------------------------------------------------------------------------
1 | object Form1: TForm1
2 | Left = 192
3 | Top = 124
4 | BorderIcons = [biSystemMenu, biMinimize]
5 | BorderStyle = bsSingle
6 | Caption = 'Access PC'
7 | ClientHeight = 164
8 | ClientWidth = 293
9 | Color = clBtnFace
10 | Font.Charset = DEFAULT_CHARSET
11 | Font.Color = clWindowText
12 | Font.Height = -11
13 | Font.Name = 'MS Sans Serif'
14 | Font.Style = []
15 | OldCreateOrder = False
16 | Position = poDesktopCenter
17 | PixelsPerInch = 96
18 | TextHeight = 13
19 | object Label1: TLabel
20 | Left = 8
21 | Top = 16
22 | Width = 40
23 | Height = 13
24 | Caption = 'IP/Host:'
25 | end
26 | object Label2: TLabel
27 | Left = 200
28 | Top = 16
29 | Width = 28
30 | Height = 13
31 | Caption = 'Porta:'
32 | end
33 | object Label3: TLabel
34 | Left = 8
35 | Top = 48
36 | Width = 34
37 | Height = 13
38 | Caption = 'Senha:'
39 | end
40 | object Label4: TLabel
41 | Left = 8
42 | Top = 77
43 | Width = 64
44 | Height = 13
45 | Caption = 'Identifica'#231#227'o:'
46 | end
47 | object Edit1: TEdit
48 | Left = 56
49 | Top = 12
50 | Width = 121
51 | Height = 21
52 | TabOrder = 0
53 | end
54 | object Edit2: TEdit
55 | Left = 232
56 | Top = 12
57 | Width = 49
58 | Height = 21
59 | TabOrder = 1
60 | Text = '6651'
61 | end
62 | object Edit3: TEdit
63 | Left = 56
64 | Top = 44
65 | Width = 225
66 | Height = 21
67 | PasswordChar = '*'
68 | TabOrder = 2
69 | end
70 | object Button1: TButton
71 | Left = 8
72 | Top = 112
73 | Width = 75
74 | Height = 25
75 | Caption = 'Conectar'
76 | TabOrder = 4
77 | OnClick = Button1Click
78 | end
79 | object StatusBar1: TStatusBar
80 | Left = 0
81 | Top = 145
82 | Width = 293
83 | Height = 19
84 | Panels = <
85 | item
86 | Text = 'Status:'
87 | Width = 50
88 | end
89 | item
90 | Text = 'Desconectado'
91 | Width = 150
92 | end>
93 | end
94 | object Edit4: TEdit
95 | Left = 80
96 | Top = 73
97 | Width = 201
98 | Height = 21
99 | TabOrder = 3
100 | Text = 'Access PC - Cliente'
101 | end
102 | object CheckBox1: TCheckBox
103 | Left = 88
104 | Top = 116
105 | Width = 201
106 | Height = 17
107 | Caption = 'Auto reconectar se perder Conex'#227'o'
108 | TabOrder = 5
109 | end
110 | object CS1: TClientSocket
111 | Active = False
112 | ClientType = ctNonBlocking
113 | Port = 0
114 | OnConnecting = CS1Connecting
115 | OnConnect = CS1Connect
116 | OnDisconnect = CS1Disconnect
117 | OnRead = CS1Read
118 | OnError = CS1Error
119 | Left = 88
120 | Top = 88
121 | end
122 | object CS2: TClientSocket
123 | Active = False
124 | ClientType = ctNonBlocking
125 | Port = 0
126 | OnConnect = CS2Connect
127 | OnRead = CS2Read
128 | OnError = CS2Error
129 | Left = 120
130 | Top = 88
131 | end
132 | object CS3: TClientSocket
133 | Active = False
134 | ClientType = ctNonBlocking
135 | Port = 0
136 | OnConnect = CS3Connect
137 | OnRead = CS3Read
138 | OnError = CS3Error
139 | Left = 152
140 | Top = 88
141 | end
142 | object Timer1: TTimer
143 | Enabled = False
144 | Interval = 15000
145 | OnTimer = Timer1Timer
146 | Left = 256
147 | Top = 56
148 | end
149 | object Timer2: TTimer
150 | Enabled = False
151 | Interval = 15000
152 | OnTimer = Timer2Timer
153 | Left = 224
154 | Top = 56
155 | end
156 | object CS4: TClientSocket
157 | Active = False
158 | ClientType = ctNonBlocking
159 | Port = 0
160 | OnConnect = CS4Connect
161 | OnRead = CS4Read
162 | OnError = CS4Error
163 | Left = 184
164 | Top = 88
165 | end
166 | object CS5: TClientSocket
167 | Active = False
168 | ClientType = ctNonBlocking
169 | Port = 0
170 | OnConnect = CS6Connect
171 | OnRead = CS5Read
172 | OnError = CS6Error
173 | Left = 216
174 | Top = 88
175 | end
176 | end
177 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/Conectar.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/Conectar.pas
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/StreamManager.pas:
--------------------------------------------------------------------------------
1 | unit StreamManager;
2 |
3 | interface
4 |
5 | uses
6 | Windows,Classes,Graphics;
7 |
8 | procedure GetScreenToBmp(DrawCur:Boolean;StreamName:TMemoryStream);
9 | procedure CompareStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
10 | procedure ResumeStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
11 |
12 | implementation
13 |
14 | // Captura a tela
15 | procedure GetScreenToBmp(DrawCur:Boolean;StreamName:TMemoryStream);
16 | var
17 | Mybmp:Tbitmap;
18 | Cursorx, Cursory: integer;
19 | dc: hdc;
20 | Mycan: Tcanvas;
21 | R: TRect;
22 | DrawPos: TPoint;
23 | MyCursor: TIcon;
24 | hld: hwnd;
25 | Threadld: dword;
26 | mp: tpoint;
27 | pIconInfo: TIconInfo;
28 | begin
29 | Mybmp := Tbitmap.Create;
30 | Mycan := TCanvas.Create;
31 | dc := GetWindowDC(0);
32 | try
33 | Mycan.Handle := dc;
34 | R := Rect(0, 0, GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN));
35 | Mybmp.Width := R.Right;
36 | Mybmp.Height := R.Bottom;
37 | Mybmp.Canvas.CopyRect(R, Mycan, R);
38 | finally
39 | releaseDC(0, DC);
40 | end;
41 | Mycan.Handle := 0;
42 | Mycan.Free;
43 |
44 | if DrawCur then
45 | begin
46 | GetCursorPos(DrawPos);
47 | MyCursor := TIcon.Create;
48 | getcursorpos(mp);
49 | hld := WindowFromPoint(mp);
50 | Threadld := GetWindowThreadProcessId(hld, nil);
51 | AttachThreadInput(GetCurrentThreadId, Threadld, True);
52 | MyCursor.Handle := Getcursor();
53 | AttachThreadInput(GetCurrentThreadId, threadld, False);
54 | GetIconInfo(Mycursor.Handle, pIconInfo);
55 | cursorx := DrawPos.x - round(pIconInfo.xHotspot);
56 | cursory := DrawPos.y - round(pIconInfo.yHotspot);
57 | Mybmp.Canvas.Draw(cursorx, cursory, MyCursor);
58 | DeleteObject(pIconInfo.hbmColor);
59 | DeleteObject(pIconInfo.hbmMask);
60 | Mycursor.ReleaseHandle;
61 | MyCursor.Free;
62 | end;
63 | Mybmp.PixelFormat:=pf8bit;
64 | Mybmp.SaveToStream(StreamName);
65 | Mybmp.Free;
66 | end;
67 |
68 | // Compara as Streams e as Separam quando os Pixels da Bitmap forem iguais.
69 | procedure CompareStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
70 | var
71 | I: Integer;
72 | P1, P2, P3: ^Char;
73 | begin
74 | MySecondStream.Clear;
75 | MyCompareStream.Clear;
76 | GetScreenToBmp(true,MySecondStream);
77 |
78 | P1 := MyFirstStream.Memory;
79 | P2 := MySecondStream.Memory;
80 | MyCompareStream.SetSize(MyFirstStream.Size);
81 | P3 := MyCompareStream.Memory;
82 |
83 | for I := 0 to MyFirstStream.Size - 1 do
84 | begin
85 | if P1^ = P2^ then
86 | P3^ := '0'
87 | else
88 | P3^ := P2^;
89 | Inc(P1);
90 | Inc(P2);
91 | Inc(P3);
92 | end;
93 |
94 | MyFirstStream.Clear;
95 | MyFirstStream.CopyFrom(MySecondStream,0);
96 | end;
97 |
98 | // Modifica as Streams para reajustar os Pixels da Bitmap
99 | procedure ResumeStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
100 | var
101 | I: Integer;
102 | P1, P2, P3: ^Char;
103 | begin
104 | P1 := MyFirstStream.Memory;
105 | MySecondStream.SetSize(MyFirstStream.Size);
106 | P2 := MySecondStream.Memory;
107 | P3 := MyCompareStream.Memory;
108 |
109 | for I := 0 to MyFirstStream.Size - 1 do
110 | begin
111 | if P3^ = '0' then
112 | P2^ := p1^
113 | else
114 | P2^ := P3^;
115 | Inc(P1);
116 | Inc(P2);
117 | Inc(P3);
118 | end;
119 |
120 | MyFirstStream.Clear;
121 | MyFirstStream.CopyFrom(MySecondStream,0);
122 | MySecondStream.Position:=0;
123 | end;
124 |
125 | end.
126 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/UAC.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/UAC.RES
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/UAC.manifest:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/UAC.rc:
--------------------------------------------------------------------------------
1 | 1 24 "UAC.manifest"
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/sndkey32.pas:
--------------------------------------------------------------------------------
1 | (*
2 | SendKeys routine for 32-bit Delphi.
3 |
4 | Written by Ken Henderson
5 |
6 | Copyright (c) 1995 Ken Henderson
7 |
8 | This unit includes two routines that simulate popular Visual Basic
9 | routines: Sendkeys and AppActivate. SendKeys takes a PChar
10 | as its first parameter and a boolean as its second, like so:
11 |
12 | SendKeys('KeyString', Wait);
13 |
14 | where KeyString is a string of key names and modifiers that you want
15 | to send to the current input focus and Wait is a boolean variable or value
16 | that indicates whether SendKeys should wait for each key message to be
17 | processed before proceeding. See the table below for more information.
18 |
19 | AppActivate also takes a PChar as its only parameter, like so:
20 |
21 | AppActivate('WindowName');
22 |
23 | where WindowName is the name of the window that you want to make the
24 | current input focus.
25 |
26 | SendKeys supports the Visual Basic SendKeys syntax, as documented below.
27 |
28 | Supported modifiers:
29 |
30 | + = Shift
31 | ^ = Control
32 | % = Alt
33 |
34 | Surround sequences of characters or key names with parentheses in order to
35 | modify them as a group. For example, '+abc' shifts only 'a', while '+(abc)' shifts
36 | all three characters.
37 |
38 | Supported special characters
39 |
40 | ~ = Enter
41 | ( = Begin modifier group (see above)
42 | ) = End modifier group (see above)
43 | { = Begin key name text (see below)
44 | } = End key name text (see below)
45 |
46 | Supported characters:
47 |
48 | Any character that can be typed is supported. Surround the modifier keys
49 | listed above with braces in order to send as normal text.
50 |
51 | Supported key names (surround these with braces):
52 |
53 | BKSP, BS, BACKSPACE
54 | BREAK
55 | CAPSLOCK
56 | CLEAR
57 | DEL
58 | DELETE
59 | DOWN
60 | END
61 | ENTER
62 | ESC
63 | ESCAPE
64 | F1
65 | F2
66 | F3
67 | F4
68 | F5
69 | F6
70 | F7
71 | F8
72 | F9
73 | F10
74 | F11
75 | F12
76 | F13
77 | F14
78 | F15
79 | F16
80 | HELP
81 | HOME
82 | INS
83 | LEFT
84 | NUMLOCK
85 | PGDN
86 | PGUP
87 | PRTSC
88 | RIGHT
89 | SCROLLLOCK
90 | TAB
91 | UP
92 |
93 | Follow the keyname with a space and a number to send the specified key a
94 | given number of times (e.g., {left 6}).
95 | *)
96 |
97 | unit sndkey32;
98 |
99 | interface
100 |
101 | Uses SysUtils, Windows, Messages;
102 |
103 | Function SendKeys(SendKeysString : PChar; Wait : Boolean) : Boolean;
104 | function AppActivate(WindowName : PChar) : boolean; overload;
105 | function AppActivate(WindowHandle : HWND) : boolean; overload;
106 |
107 | {Buffer for working with PChar's}
108 |
109 | const
110 | WorkBufLen = 40;
111 | var
112 | WorkBuf : array[0..WorkBufLen] of Char;
113 |
114 | implementation
115 | type
116 | THKeys = array[0..pred(MaxLongInt)] of byte;
117 | var
118 | AllocationSize : integer;
119 |
120 | (*
121 | Converts a string of characters and key names to keyboard events and
122 | passes them to Windows.
123 |
124 | Example syntax:
125 |
126 | SendKeys('abc123{left}{left}{left}def{end}456{left 6}ghi{end}789', True);
127 |
128 | *)
129 |
130 | Function SendKeys(SendKeysString : PChar; Wait : Boolean) : Boolean;
131 | type
132 | WBytes = array[0..pred(SizeOf(Word))] of Byte;
133 |
134 | TSendKey = record
135 | Name : ShortString;
136 | VKey : Byte;
137 | end;
138 |
139 | const
140 | {Array of keys that SendKeys recognizes.
141 |
142 | If you add to this list, you must be sure to keep it sorted alphabetically
143 | by Name because a binary search routine is used to scan it.}
144 |
145 | MaxSendKeyRecs = 41;
146 | SendKeyRecs : array[1..MaxSendKeyRecs] of TSendKey =
147 | (
148 | (Name:'BACKSPACE'; VKey:VK_BACK),
149 | (Name:'BKSP'; VKey:VK_BACK),
150 | (Name:'BREAK'; VKey:VK_CANCEL),
151 | (Name:'BS'; VKey:VK_BACK),
152 | (Name:'CAPSLOCK'; VKey:VK_CAPITAL),
153 | (Name:'CLEAR'; VKey:VK_CLEAR),
154 | (Name:'DEL'; VKey:VK_DELETE),
155 | (Name:'DELETE'; VKey:VK_DELETE),
156 | (Name:'DOWN'; VKey:VK_DOWN),
157 | (Name:'END'; VKey:VK_END),
158 | (Name:'ENTER'; VKey:VK_RETURN),
159 | (Name:'ESC'; VKey:VK_ESCAPE),
160 | (Name:'ESCAPE'; VKey:VK_ESCAPE),
161 | (Name:'F1'; VKey:VK_F1),
162 | (Name:'F10'; VKey:VK_F10),
163 | (Name:'F11'; VKey:VK_F11),
164 | (Name:'F12'; VKey:VK_F12),
165 | (Name:'F13'; VKey:VK_F13),
166 | (Name:'F14'; VKey:VK_F14),
167 | (Name:'F15'; VKey:VK_F15),
168 | (Name:'F16'; VKey:VK_F16),
169 | (Name:'F2'; VKey:VK_F2),
170 | (Name:'F3'; VKey:VK_F3),
171 | (Name:'F4'; VKey:VK_F4),
172 | (Name:'F5'; VKey:VK_F5),
173 | (Name:'F6'; VKey:VK_F6),
174 | (Name:'F7'; VKey:VK_F7),
175 | (Name:'F8'; VKey:VK_F8),
176 | (Name:'F9'; VKey:VK_F9),
177 | (Name:'HELP'; VKey:VK_HELP),
178 | (Name:'HOME'; VKey:VK_HOME),
179 | (Name:'INS'; VKey:VK_INSERT),
180 | (Name:'LEFT'; VKey:VK_LEFT),
181 | (Name:'NUMLOCK'; VKey:VK_NUMLOCK),
182 | (Name:'PGDN'; VKey:VK_NEXT),
183 | (Name:'PGUP'; VKey:VK_PRIOR),
184 | (Name:'PRTSC'; VKey:VK_PRINT),
185 | (Name:'RIGHT'; VKey:VK_RIGHT),
186 | (Name:'SCROLLLOCK'; VKey:VK_SCROLL),
187 | (Name:'TAB'; VKey:VK_TAB),
188 | (Name:'UP'; VKey:VK_UP)
189 | );
190 |
191 | {Extra VK constants missing from Delphi's Windows API interface}
192 | VK_NULL=0;
193 | VK_SemiColon=186;
194 | VK_Equal=187;
195 | VK_Comma=188;
196 | VK_Minus=189;
197 | VK_Period=190;
198 | VK_Slash=191;
199 | VK_BackQuote=192;
200 | VK_LeftBracket=219;
201 | VK_BackSlash=220;
202 | VK_RightBracket=221;
203 | VK_Quote=222;
204 | VK_Last=VK_Quote;
205 |
206 | ExtendedVKeys : set of byte =
207 | [VK_Up,
208 | VK_Down,
209 | VK_Left,
210 | VK_Right,
211 | VK_Home,
212 | VK_End,
213 | VK_Prior, {PgUp}
214 | VK_Next, {PgDn}
215 | VK_Insert,
216 | VK_Delete];
217 |
218 | const
219 | INVALIDKEY = $FFFF {Unsigned -1};
220 | VKKEYSCANSHIFTON = $01;
221 | VKKEYSCANCTRLON = $02;
222 | VKKEYSCANALTON = $04;
223 | UNITNAME = 'SendKeys';
224 | var
225 | UsingParens, ShiftDown, ControlDown, AltDown, FoundClose : Boolean;
226 | PosSpace : Byte;
227 | I, L : Integer;
228 | NumTimes, MKey : Word;
229 | KeyString : String[20];
230 |
231 | procedure DisplayMessage(Message : PChar);
232 | begin
233 | // MessageBox(0,Message,UNITNAME,0);
234 | end;
235 |
236 | function BitSet(BitTable, BitMask : Byte) : Boolean;
237 | begin
238 | Result:=ByteBool(BitTable and BitMask);
239 | end;
240 |
241 | procedure SetBit(var BitTable : Byte; BitMask : Byte);
242 | begin
243 | BitTable:=BitTable or Bitmask;
244 | end;
245 |
246 | Procedure KeyboardEvent(VKey, ScanCode : Byte; Flags : Longint);
247 | var
248 | KeyboardMsg : TMsg;
249 | begin
250 | keybd_event(VKey, ScanCode, Flags,0);
251 | If (Wait) then While (PeekMessage(KeyboardMsg,0,WM_KEYFIRST, WM_KEYLAST, PM_REMOVE)) do begin
252 | TranslateMessage(KeyboardMsg);
253 | DispatchMessage(KeyboardMsg);
254 | end;
255 | end;
256 |
257 | Procedure SendKeyDown(VKey: Byte; NumTimes : Word; GenUpMsg : Boolean);
258 | var
259 | Cnt : Word;
260 | ScanCode : Byte;
261 | NumState : Boolean;
262 | KeyBoardState : TKeyboardState;
263 | begin
264 | If (VKey=VK_NUMLOCK) then begin
265 | NumState:=ByteBool(GetKeyState(VK_NUMLOCK) and 1);
266 | GetKeyBoardState(KeyBoardState);
267 | If NumState then KeyBoardState[VK_NUMLOCK]:=(KeyBoardState[VK_NUMLOCK] and not 1)
268 | else KeyBoardState[VK_NUMLOCK]:=(KeyBoardState[VK_NUMLOCK] or 1);
269 | SetKeyBoardState(KeyBoardState);
270 | exit;
271 | end;
272 |
273 | ScanCode:=Lo(MapVirtualKey(VKey,0));
274 | For Cnt:=1 to NumTimes do
275 | If (VKey in ExtendedVKeys)then begin
276 | KeyboardEvent(VKey, ScanCode, KEYEVENTF_EXTENDEDKEY);
277 | If (GenUpMsg) then
278 | KeyboardEvent(VKey, ScanCode, KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP)
279 | end else begin
280 | KeyboardEvent(VKey, ScanCode, 0);
281 | If (GenUpMsg) then KeyboardEvent(VKey, ScanCode, KEYEVENTF_KEYUP);
282 | end;
283 | end;
284 |
285 | Procedure SendKeyUp(VKey: Byte);
286 | var
287 | ScanCode : Byte;
288 | begin
289 | ScanCode:=Lo(MapVirtualKey(VKey,0));
290 | If (VKey in ExtendedVKeys)then
291 | KeyboardEvent(VKey, ScanCode, KEYEVENTF_EXTENDEDKEY and KEYEVENTF_KEYUP)
292 | else KeyboardEvent(VKey, ScanCode, KEYEVENTF_KEYUP);
293 | end;
294 |
295 | Procedure SendKey(MKey: Word; NumTimes : Word; GenDownMsg : Boolean);
296 | begin
297 | If (BitSet(Hi(MKey),VKKEYSCANSHIFTON)) then SendKeyDown(VK_SHIFT,1,False);
298 | If (BitSet(Hi(MKey),VKKEYSCANCTRLON)) then SendKeyDown(VK_CONTROL,1,False);
299 | If (BitSet(Hi(MKey),VKKEYSCANALTON)) then SendKeyDown(VK_MENU,1,False);
300 | SendKeyDown(Lo(MKey), NumTimes, GenDownMsg);
301 | If (BitSet(Hi(MKey),VKKEYSCANSHIFTON)) then SendKeyUp(VK_SHIFT);
302 | If (BitSet(Hi(MKey),VKKEYSCANCTRLON)) then SendKeyUp(VK_CONTROL);
303 | If (BitSet(Hi(MKey),VKKEYSCANALTON)) then SendKeyUp(VK_MENU);
304 | end;
305 |
306 | {Implements a simple binary search to locate special key name strings}
307 |
308 | Function StringToVKey(KeyString : ShortString) : Word;
309 | var
310 | Found, Collided : Boolean;
311 | Bottom, Top, Middle : Byte;
312 | begin
313 | Result:=INVALIDKEY;
314 | Bottom:=1;
315 | Top:=MaxSendKeyRecs;
316 | Found:=false;
317 | Middle:=(Bottom+Top) div 2;
318 | Repeat
319 | Collided:=((Bottom=Middle) or (Top=Middle));
320 | If (KeyString=SendKeyRecs[Middle].Name) then begin
321 | Found:=True;
322 | Result:=SendKeyRecs[Middle].VKey;
323 | end else begin
324 | If (KeyString>SendKeyRecs[Middle].Name) then Bottom:=Middle
325 | else Top:=Middle;
326 | Middle:=(Succ(Bottom+Top)) div 2;
327 | end;
328 | Until (Found or Collided);
329 | If (Result=INVALIDKEY) then DisplayMessage('Invalid Key Name');
330 | end;
331 |
332 | procedure PopUpShiftKeys;
333 | begin
334 | If (not UsingParens) then begin
335 | If ShiftDown then SendKeyUp(VK_SHIFT);
336 | If ControlDown then SendKeyUp(VK_CONTROL);
337 | If AltDown then SendKeyUp(VK_MENU);
338 | ShiftDown:=false;
339 | ControlDown:=false;
340 | AltDown:=false;
341 | end;
342 | end;
343 |
344 | begin
345 | AllocationSize:=MaxInt;
346 | Result:=false;
347 | UsingParens:=false;
348 | ShiftDown:=false;
349 | ControlDown:=false;
350 | AltDown:=false;
351 | I:=0;
352 | L:=StrLen(SendKeysString);
353 | If (L>AllocationSize) then L:=AllocationSize;
354 | If (L=0) then Exit;
355 |
356 | While (I0) then begin
417 | NumTimes:=StrToInt(Copy(KeyString,Succ(PosSpace),Length(KeyString)-PosSpace));
418 | KeyString:=Copy(KeyString,1,Pred(PosSpace));
419 | end;
420 | If (Length(KeyString)=1) then MKey:=vkKeyScan(KeyString[1])
421 | else MKey:=StringToVKey(KeyString);
422 | If (MKey<>INVALIDKEY) then begin
423 | SendKey(MKey,NumTimes,True);
424 | PopUpShiftKeys;
425 | Continue;
426 | end;
427 | end;
428 | '~' : begin
429 | SendKeyDown(VK_RETURN,1,True);
430 | PopUpShiftKeys;
431 | Inc(I);
432 | end;
433 | else begin
434 | MKey:=vkKeyScan(SendKeysString[I]);
435 | If (MKey<>INVALIDKEY) then begin
436 | SendKey(MKey,1,True);
437 | PopUpShiftKeys;
438 | end else DisplayMessage('Invalid KeyName');
439 | Inc(I);
440 | end;
441 | end;
442 | end;
443 | Result:=true;
444 | PopUpShiftKeys;
445 | end;
446 |
447 | {AppActivate
448 |
449 | This is used to set the current input focus to a given window using its
450 | name. This is especially useful for ensuring a window is active before
451 | sending it input messages using the SendKeys function. You can specify
452 | a window's name in its entirety, or only portion of it, beginning from
453 | the left.
454 |
455 | }
456 |
457 |
458 | var
459 | WindowHandle : HWND;
460 |
461 | function EnumWindowsProc(WHandle: HWND; lParam: LPARAM): BOOL; export; stdcall;
462 | var
463 | WindowName : array[0..MAX_PATH] of char;
464 | begin
465 | {Can't test GetWindowText's return value since some windows don't have a title}
466 | GetWindowText(WHandle,WindowName,MAX_PATH);
467 | Result := (StrLIComp(WindowName,PChar(lParam), StrLen(PChar(lParam))) <> 0);
468 | If (not Result) then WindowHandle:=WHandle;
469 | end;
470 |
471 | function AppActivate(WindowHandle : HWND) : boolean; overload;
472 | begin
473 | try
474 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_HOTKEY, WindowHandle);
475 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_RESTORE, WindowHandle);
476 | result := SetForegroundWindow(WindowHandle);
477 | except
478 | on Exception do Result:=false;
479 | end;
480 | end;
481 |
482 | function AppActivate(WindowName : PChar) : boolean; overload;
483 | begin
484 | try
485 | Result:=true;
486 | WindowHandle:=FindWindow(nil,WindowName);
487 | If (WindowHandle=0) then EnumWindows(@EnumWindowsProc,Integer(PChar(WindowName)));
488 | If (WindowHandle<>0) then begin
489 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_HOTKEY, WindowHandle);
490 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_RESTORE, WindowHandle);
491 | SetForegroundWindow(WindowHandle);
492 | end else Result:=false;
493 | except
494 | on Exception do Result:=false;
495 | end;
496 | end;
497 |
498 |
499 |
500 | end.
501 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/zlib/adler32.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/zlib/adler32.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/zlib/deflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/zlib/deflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/zlib/infblock.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/zlib/infblock.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/zlib/infcodes.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/zlib/infcodes.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/zlib/inffast.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/zlib/inffast.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/zlib/inflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/zlib/inflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/zlib/inftrees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/zlib/inftrees.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/zlib/infutil.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/zlib/infutil.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Cliente/zlib/trees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Cliente/zlib/trees.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Icones/Deleket-Sleek-Xp-Basic-Document-Blank.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Icones/Deleket-Sleek-Xp-Basic-Document-Blank.ico
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Icones/Deleket-Sleek-Xp-Basic-Folder-Open.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Icones/Deleket-Sleek-Xp-Basic-Folder-Open.ico
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Icones/Desktop (1).ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Icones/Desktop (1).ico
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Icones/Desktop.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Icones/Desktop.ico
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Icones/folder_blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Icones/folder_blue.png
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Icones/icone.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Icones/icone.bmp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Icones/icone2.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Icones/icone2.bmp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Access_PC.cfg:
--------------------------------------------------------------------------------
1 | -$A8
2 | -$B-
3 | -$C+
4 | -$D+
5 | -$E-
6 | -$F-
7 | -$G+
8 | -$H+
9 | -$I+
10 | -$J-
11 | -$K-
12 | -$L+
13 | -$M-
14 | -$N+
15 | -$O+
16 | -$P+
17 | -$Q-
18 | -$R-
19 | -$S-
20 | -$T-
21 | -$U-
22 | -$V+
23 | -$W-
24 | -$X+
25 | -$YD
26 | -$Z1
27 | -cg
28 | -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
29 | -H+
30 | -W+
31 | -M
32 | -$M16384,1048576
33 | -K$00400000
34 | -E"..\Bin\"
35 | -LE"c:\program files (x86)\borland\delphi7\Projects\Bpl"
36 | -LN"c:\program files (x86)\borland\delphi7\Projects\Bpl"
37 | -w-UNSAFE_TYPE
38 | -w-UNSAFE_CODE
39 | -w-UNSAFE_CAST
40 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Access_PC.dof:
--------------------------------------------------------------------------------
1 | [FileVersion]
2 | Version=7.0
3 | [Compiler]
4 | A=8
5 | B=0
6 | C=1
7 | D=1
8 | E=0
9 | F=0
10 | G=1
11 | H=1
12 | I=1
13 | J=0
14 | K=0
15 | L=1
16 | M=0
17 | N=1
18 | O=1
19 | P=1
20 | Q=0
21 | R=0
22 | S=0
23 | T=0
24 | U=0
25 | V=1
26 | W=0
27 | X=1
28 | Y=1
29 | Z=1
30 | ShowHints=1
31 | ShowWarnings=1
32 | UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
33 | NamespacePrefix=
34 | SymbolDeprecated=1
35 | SymbolLibrary=1
36 | SymbolPlatform=1
37 | UnitLibrary=1
38 | UnitPlatform=1
39 | UnitDeprecated=1
40 | HResultCompat=1
41 | HidingMember=1
42 | HiddenVirtual=1
43 | Garbage=1
44 | BoundsError=1
45 | ZeroNilCompat=1
46 | StringConstTruncated=1
47 | ForLoopVarVarPar=1
48 | TypedConstVarPar=1
49 | AsgToTypedConst=1
50 | CaseLabelRange=1
51 | ForVariable=1
52 | ConstructingAbstract=1
53 | ComparisonFalse=1
54 | ComparisonTrue=1
55 | ComparingSignedUnsigned=1
56 | CombiningSignedUnsigned=1
57 | UnsupportedConstruct=1
58 | FileOpen=1
59 | FileOpenUnitSrc=1
60 | BadGlobalSymbol=1
61 | DuplicateConstructorDestructor=1
62 | InvalidDirective=1
63 | PackageNoLink=1
64 | PackageThreadVar=1
65 | ImplicitImport=1
66 | HPPEMITIgnored=1
67 | NoRetVal=1
68 | UseBeforeDef=1
69 | ForLoopVarUndef=1
70 | UnitNameMismatch=1
71 | NoCFGFileFound=1
72 | MessageDirective=1
73 | ImplicitVariants=1
74 | UnicodeToLocale=1
75 | LocaleToUnicode=1
76 | ImagebaseMultiple=1
77 | SuspiciousTypecast=1
78 | PrivatePropAccessor=1
79 | UnsafeType=0
80 | UnsafeCode=0
81 | UnsafeCast=0
82 | [Linker]
83 | MapFile=0
84 | OutputObjs=0
85 | ConsoleApp=1
86 | DebugInfo=0
87 | RemoteSymbols=0
88 | MinStackSize=16384
89 | MaxStackSize=1048576
90 | ImageBase=4194304
91 | ExeDescription=
92 | [Directories]
93 | OutputDir=..\Bin\
94 | UnitOutputDir=
95 | PackageDLLOutputDir=
96 | PackageDCPOutputDir=
97 | SearchPath=
98 | Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;dclOfficeXP;CoolTrayIcon_D6plus
99 | Conditionals=
100 | DebugSourceDirs=
101 | UsePackages=0
102 | [Parameters]
103 | RunParams=
104 | HostApplication=
105 | Launcher=
106 | UseLauncher=0
107 | DebugCWD=
108 | [Language]
109 | ActiveLang=
110 | ProjectLang=
111 | RootDir=
112 | [Version Info]
113 | IncludeVerInfo=1
114 | AutoIncBuild=0
115 | MajorVer=1
116 | MinorVer=1
117 | Release=4
118 | Build=49
119 | Debug=0
120 | PreRelease=0
121 | Special=0
122 | Private=0
123 | DLL=0
124 | Locale=1046
125 | CodePage=1252
126 | [Version Info Keys]
127 | CompanyName=
128 | FileDescription=Acesso Remoto
129 | FileVersion=1.1.4.49
130 | InternalName=Access PC
131 | LegalCopyright=
132 | LegalTrademarks=
133 | OriginalFilename=Access PC
134 | ProductName=Access PC
135 | ProductVersion=1.0.0.0
136 | Comments=Acesso Remoto
137 | [HistoryLists\hlUnitAliases]
138 | Count=1
139 | Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
140 | [HistoryLists\hlOutputDirectorry]
141 | Count=1
142 | Item0=..\Bin\
143 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Access_PC.dpr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/Access_PC.dpr
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Access_PC.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/Access_PC.res
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Chat.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/Chat.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Chat.dfm:
--------------------------------------------------------------------------------
1 | object Form4: TForm4
2 | Left = 200
3 | Top = 149
4 | Width = 683
5 | Height = 359
6 | Caption = 'Chat'
7 | Color = clBtnFace
8 | Font.Charset = DEFAULT_CHARSET
9 | Font.Color = clWindowText
10 | Font.Height = -11
11 | Font.Name = 'MS Sans Serif'
12 | Font.Style = []
13 | OldCreateOrder = False
14 | Position = poDesktopCenter
15 | OnClose = FormClose
16 | PixelsPerInch = 96
17 | TextHeight = 13
18 | object Memo1: TMemo
19 | Left = 0
20 | Top = 239
21 | Width = 667
22 | Height = 81
23 | Align = alBottom
24 | ScrollBars = ssVertical
25 | TabOrder = 0
26 | OnKeyDown = Memo1KeyDown
27 | OnKeyUp = Memo1KeyUp
28 | end
29 | object Memo2: TMemo
30 | Left = 0
31 | Top = 0
32 | Width = 667
33 | Height = 239
34 | Align = alClient
35 | ReadOnly = True
36 | ScrollBars = ssVertical
37 | TabOrder = 1
38 | end
39 | end
40 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Chat.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/Chat.pas
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Desktop_Remoto.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/Desktop_Remoto.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Desktop_Remoto.dfm:
--------------------------------------------------------------------------------
1 | object Form2: TForm2
2 | Left = 237
3 | Top = 129
4 | Width = 712
5 | Height = 429
6 | Caption = 'Access PC - Desktop Remoto de "fulano"'
7 | Color = clBtnFace
8 | Font.Charset = DEFAULT_CHARSET
9 | Font.Color = clWindowText
10 | Font.Height = -11
11 | Font.Name = 'MS Sans Serif'
12 | Font.Style = []
13 | OldCreateOrder = False
14 | Position = poDesktopCenter
15 | OnClose = FormClose
16 | OnResize = FormResize
17 | PixelsPerInch = 96
18 | TextHeight = 13
19 | object Panel1: TPanel
20 | Left = 0
21 | Top = 357
22 | Width = 696
23 | Height = 33
24 | Align = alBottom
25 | TabOrder = 0
26 | object CheckBox1: TCheckBox
27 | Left = 8
28 | Top = 8
29 | Width = 97
30 | Height = 17
31 | TabStop = False
32 | Caption = 'Mouse Remoto'
33 | TabOrder = 0
34 | OnKeyDown = CheckBox1KeyDown
35 | end
36 | object CheckBox2: TCheckBox
37 | Left = 120
38 | Top = 8
39 | Width = 105
40 | Height = 17
41 | TabStop = False
42 | Caption = 'Teclado Remoto'
43 | TabOrder = 1
44 | OnClick = CheckBox2Click
45 | OnKeyDown = CheckBox2KeyDown
46 | end
47 | object CheckBox3: TCheckBox
48 | Left = 232
49 | Top = 8
50 | Width = 137
51 | Height = 17
52 | TabStop = False
53 | Caption = 'Redimensionar Imagem'
54 | TabOrder = 2
55 | OnClick = CheckBox3Click
56 | OnKeyDown = CheckBox3KeyDown
57 | end
58 | end
59 | object ScrollBox1: TScrollBox
60 | Left = 0
61 | Top = 0
62 | Width = 696
63 | Height = 357
64 | HorzScrollBar.Smooth = True
65 | HorzScrollBar.Tracking = True
66 | VertScrollBar.Smooth = True
67 | VertScrollBar.Tracking = True
68 | Align = alClient
69 | TabOrder = 1
70 | object Image1: TImage
71 | Left = 0
72 | Top = 0
73 | Width = 233
74 | Height = 161
75 | AutoSize = True
76 | OnDblClick = Image1DblClick
77 | OnMouseDown = Image1MouseDown
78 | OnMouseMove = Image1MouseMove
79 | OnMouseUp = Image1MouseUp
80 | end
81 | end
82 | object Timer1: TTimer
83 | Interval = 1
84 | OnTimer = Timer1Timer
85 | Left = 136
86 | Top = 16
87 | end
88 | end
89 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Desktop_Remoto.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/Desktop_Remoto.pas
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/File_Manager.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/File_Manager.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/File_Manager.dfm:
--------------------------------------------------------------------------------
1 | object Form3: TForm3
2 | Left = 310
3 | Top = 163
4 | Width = 638
5 | Height = 442
6 | Caption = 'Access PC - Compartilhador de Arquivos de "Fulano"'
7 | Color = clBtnFace
8 | Font.Charset = DEFAULT_CHARSET
9 | Font.Color = clWindowText
10 | Font.Height = -11
11 | Font.Name = 'MS Sans Serif'
12 | Font.Style = []
13 | OldCreateOrder = False
14 | Position = poDesktopCenter
15 | OnClose = FormClose
16 | OnCreate = FormCreate
17 | PixelsPerInch = 96
18 | TextHeight = 13
19 | object ListView1: TListView
20 | Left = 8
21 | Top = 32
22 | Width = 601
23 | Height = 193
24 | Columns = <
25 | item
26 | Caption = 'Pasta / Arquivo'
27 | Width = 470
28 | end
29 | item
30 | Caption = 'Tipo'
31 | Width = 100
32 | end>
33 | GridLines = True
34 | LargeImages = ImageList1
35 | ReadOnly = True
36 | RowSelect = True
37 | PopupMenu = PopupMenu1
38 | SmallImages = ImageList1
39 | StateImages = ImageList1
40 | TabOrder = 0
41 | ViewStyle = vsReport
42 | OnDblClick = ListView1DblClick
43 | end
44 | object Edit1: TEdit
45 | Left = 0
46 | Top = 0
47 | Width = 617
48 | Height = 21
49 | TabOrder = 1
50 | Text = 'C:\'
51 | OnKeyDown = Edit1KeyDown
52 | end
53 | object Panel1: TPanel
54 | Left = 0
55 | Top = 340
56 | Width = 622
57 | Height = 63
58 | Align = alBottom
59 | TabOrder = 2
60 | DesignSize = (
61 | 622
62 | 63)
63 | object Label1: TLabel
64 | Left = 8
65 | Top = 8
66 | Width = 116
67 | Height = 13
68 | Caption = 'Progresso de Download:'
69 | end
70 | object Label2: TLabel
71 | Left = 8
72 | Top = 32
73 | Width = 102
74 | Height = 13
75 | Caption = 'Progresso de Upload:'
76 | end
77 | object ProgressBar1: TProgressBar
78 | Left = 128
79 | Top = 8
80 | Width = 482
81 | Height = 17
82 | Anchors = [akLeft, akRight, akBottom]
83 | TabOrder = 0
84 | end
85 | object ProgressBar2: TProgressBar
86 | Left = 128
87 | Top = 32
88 | Width = 482
89 | Height = 17
90 | Anchors = [akLeft, akRight, akBottom]
91 | TabOrder = 1
92 | end
93 | end
94 | object ImageList1: TImageList
95 | Left = 176
96 | Top = 144
97 | Bitmap = {
98 | 494C010102000400040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
99 | 0000000000003600000028000000400000001000000001002000000000000010
100 | 0000000000000000000000000000000000000000000000000000000000000000
101 | 0000D8E8EE00FCFCFC000000000000000000FCFCFC00C5C5C500000000000000
102 | 0000000000000000000000000000000000000000000000000000000000000000
103 | 0000000000000000000000000000000000000000000000000000000000000000
104 | 0000000000000000000000000000000000000000000000000000000000000000
105 | 0000000000000000000000000000000000000000000000000000000000000000
106 | 0000000000000000000000000000000000000000000000000000000000000000
107 | 0000000000000000000000000000000000000000000000000000000000000000
108 | 0000000000000000000000000000000000000000000000000000000000000000
109 | 000070BAD800B0B0B000D5D5D500E2E2E200E8E7E80078929D005A97B0006CB3
110 | D000D2D2D200FBFBFB0000000000000000000000000000000000000000000000
111 | 0000000000000000000000000000000000000000000000000000000000000000
112 | 0000000000000000000000000000000000000000000000000000000000000000
113 | 0000000000000000000000000000000000000000000000000000000000000000
114 | 0000000000000000000000000000000000000000000000000000000000000000
115 | 0000000000000000000000000000000000000000000000000000000000000000
116 | 00000000000000000000000000000000000000000000000000000000000074BF
117 | DE0073BEDE0084848400C7C7C800E3E3E300ECECEC006F98AA005C99B20071B9
118 | D600D1D1D100DFDFDF0000000000000000000000000000000000000000000000
119 | 0000000000000000000000000000000000000000000000000000000000000000
120 | 0000000000000000000000000000000000000000000000000000000000000000
121 | 0000000000000000000000000000000000000000000000000000000000000000
122 | 0000000000000000000000000000000000000000000000000000000000000000
123 | 0000000000000000000000000000000000000000000000000000000000000000
124 | 0000000000000000000000000000000000000000000000000000DBEDF50077C3
125 | E30077C3E30088888900C7C7C800E4E4E400E8E8E800729CAF005F9DB80073BD
126 | DD00D3D3D300E6E6E600F4F4F4000000000000000000BFBDBB00BFBDBB00BFBD
127 | BB00A6AEB000BDBBB900BFBDBB00BFBDBB00BDBBB9009A989600BFBDBB00BFBD
128 | BB00BFBDBB00BFBDBB00BFBDBB00CCCCCB000000000000000000000000000000
129 | 0000000000000000000000000000000000000000000000000000000000000000
130 | 0000000000000000000000000000000000000000000000000000000000000000
131 | 0000000000000000000000000000000000000000000000000000000000000000
132 | 0000000000000000000000000000000000000000000000000000DDF0F8007CCB
133 | ED007CCBEC008C8C8C00CBCCCD00D6D6D700E8E8E80077A2B30063A2BC0078C3
134 | E300F4F4F400FDFDFD000000000000000000CFC8C300E0DCD900DCD7D500DBD7
135 | D400DEDAD700DAD6D300DAD6D300E6E5E400E6E5E400EBEBEB00ECECEC00EDED
136 | ED00F2F2F200F1F1F100EFEFEF00BDBAB8000000000000000000000000000000
137 | 0000000000000000000000000000000000000000000000000000000000000000
138 | 0000000000000000000000000000000000000000000000000000000000000000
139 | 0000000000000000000000000000000000000000000000000000000000000000
140 | 0000000000000000000000000000000000000000000000000000DEF1F90080CF
141 | F20080CFF100799AA9009B9B9C00E1E0E100EBECEB007AA5B70065A6C0007AC8
142 | E80000000000000000000000000000000000CFC8C300CBA88E00BB846000BA83
143 | 5D00BA815900B97F5700B97E5400B87C5100C2A08900E3E3E300E4E4E400E5E5
144 | E500EEEEEE00ECECEC00EAEAEA00BDBAB8000000000000000000000000000000
145 | 0000000000000000000000000000000000000000000000000000000000000000
146 | 0000000000000000000000000000000000000000000000000000000000000000
147 | 0000000000000000000000000000000000000000000000000000000000000000
148 | 0000000000000000000000000000000000000000000000000000DFF2FB0083D5
149 | F70082D4F6007BC3E00098989900D9D9D900E4E4E3007DA8BB0069A9C4007FCD
150 | ED0000000000000000000000000000000000CFC8C300D1B29600C08D6600BF8A
151 | 6300BE885E00BE875C00BD855900BD845700C7A89000E9E9E900E7E7E700E7E7
152 | E700EBEBEB00E9E9E900E7E7E700BCB9B7000000000000000000000000000000
153 | 0000000000000000000000000000000000000000000000000000000000000000
154 | 0000000000000000000000000000000000000000000000000000000000000000
155 | 0000000000000000000000000000000000000000000000000000000000000000
156 | 0000000000000000000000000000000000000000000000000000E0F4FC0087DB
157 | FD0086D9FB0080C8E5008C8C8D00DBDBDC00ECECEC0080ABBE006AACC80081D0
158 | F30000000000000000000000000000000000CDC7C100D9BB9C00C9996C00C999
159 | 6C00C9986B00C9986A00C9976800C9966600D1B59B00EEEEEE00EDEDED00EBEB
160 | EB00EEEEEE00EBEBEB00E9E9E900B9B7B5000000000000000000000000000000
161 | 0000000000000000000000000000000000000000000000000000000000000000
162 | 0000000000000000000000000000000000000000000000000000000000000000
163 | 0000000000000000000000000000000000000000000000000000000000000000
164 | 0000000000000000000000000000000000000000000000000000E0F4FD0089DC
165 | FE0088DCFE0082CAE7009B9C9C00CFCFD000E3E3E20081ACC0006DAFCB0084D4
166 | F60000000000000000000000000000000000CAC3BF00DEC29F00D1A37100D1A3
167 | 7100D1A37100D1A37100D1A27000D1A26F00D7BFA300F4F4F400F3F3F300F2F2
168 | F200EDEAEA00BF8D6C00E2E2E200B9B7B5000000000000000000000000000000
169 | 0000000000000000000000000000000000000000000000000000000000000000
170 | 0000000000000000000000000000000000000000000000000000000000000000
171 | 0000000000000000000000000000000000000000000000000000000000000000
172 | 0000000000000000000000000000000000000000000000000000E1F5FD008CE1
173 | FE008BE0FE0084CCE7008A8B8B00E4E4E500FAFAFA0084AFC2006EB1CD0087D8
174 | FB0000000000000000000000000000000000CAC3BF00E4C9A300D9AC7500D8AD
175 | 7600D9AD7600D9AD7700D9AD7600D8AD7600DDC7A900F4F4F400F4F4F400F2F2
176 | F200F1EEEE00C7966D00E6E6E600B8B6B4000000000000000000000000000000
177 | 0000000000000000000000000000000000000000000000000000000000000000
178 | 0000000000000000000000000000000000000000000000000000000000000000
179 | 0000000000000000000000000000000000000000000000000000000000000000
180 | 0000000000000000000000000000000000000000000000000000E2F6FD0090E5
181 | FE008FE3FE0086CEE700AEAEAF00FFFFFF00FFFFFF0086B1C4006FB1CE0087D8
182 | FB0000000000000000000000000000000000C9C2BF00EEDDBF00E7C89900E0B6
183 | 7A00E0B67B00DFB67B00DFB67B00DFB67B00E2CDAE00F3F3F300F2F2F200F2F2
184 | F200F4F1F100D3A77500EAEAEA00B8B6B4000000000000000000000000000000
185 | 0000000000000000000000000000000000000000000000000000000000000000
186 | 0000000000000000000000000000000000000000000000000000000000000000
187 | 0000000000000000000000000000000000000000000000000000000000000000
188 | 0000000000000000000000000000000000000000000000000000E2F8FD0092EA
189 | FE0091E8FE0088D1E800B0B0B000FDFDFD00F7F7F70087B2C5006FB2CF0087D8
190 | FB0000000000000000000000000000000000CAC4C100F0E0C400EED5AD00EBCF
191 | A200E4BD8000E3BB7D00E3BB7D00E2BB7D00E4D0AF00F7F7F700F6F6F600F6F6
192 | F600F6F3F200D9AE7700EBEBEB00B7B5B4000000000000000000000000000000
193 | 0000000000000000000000000000000000000000000000000000000000000000
194 | 0000000000000000000000000000000000000000000000000000000000000000
195 | 0000000000000000000000000000000000000000000000000000000000000000
196 | 0000000000000000000000000000000000000000000000000000E4F9FE0097EF
197 | FE0095EBFE009EE0F300FFFFFF00FEFEFE00F8FCFE0096DCFB0087D8FB0087D8
198 | FB0000000000000000000000000000000000D1CECD00F5E8CD00F5E1BC00F3DD
199 | B400F0D6A800EED29F00EDCD9600EBCA8F00E8D6B600F4F4F400F4F4F400F4F4
200 | F400F7F4F400E6BD7A00EDEDED00AEAEAE000000000000000000000000000000
201 | 0000000000000000000000000000000000000000000000000000000000000000
202 | 0000000000000000000000000000000000000000000000000000000000000000
203 | 0000000000000000000000000000000000000000000000000000000000000000
204 | 0000000000000000000000000000000000000000000000000000E4FAFE0099F3
205 | FE00E3F4FB00ADE4FC0087D8FB0090DBFB0091DCFB00A5E3FC00C2EBFD00E4F4
206 | FC0000000000000000000000000000000000D0CCCA00F7EDD600FBECCB00F9E7
207 | C000F6DEAF00F4DAA500F1D49B00F0D19300EAD9B800F5F5F500F5F5F500F5F5
208 | F500F8F5F500F4D18500EEEEEE00B1B0B0000000000000000000000000000000
209 | 0000000000000000000000000000000000000000000000000000000000000000
210 | 0000000000000000000000000000000000000000000000000000000000000000
211 | 0000000000000000000000000000000000000000000000000000000000000000
212 | 0000000000000000000000000000000000000000000000000000F4FBFD00DCF4
213 | FB00000000000000000000000000000000000000000000000000000000000000
214 | 000000000000000000000000000000000000CFCCC900FAF8F700F8F5F400F8F5
215 | F400F8F5F400F9F5F400F9F5F400F9F6F400FBF9F900FFFFFF00FFFFFF00FFFF
216 | FF00FEFEFE00F8F5F500FCFCFC00B1B1B0000000000000000000000000000000
217 | 0000000000000000000000000000000000000000000000000000000000000000
218 | 0000000000000000000000000000000000000000000000000000000000000000
219 | 0000000000000000000000000000000000000000000000000000000000000000
220 | 0000000000000000000000000000000000000000000000000000000000000000
221 | 0000000000000000000000000000000000000000000000000000000000000000
222 | 000000000000000000000000000000000000DEDDDC00F7F6F500F1F1F000E3EA
223 | EA00D4E0E000CED7D700E1DBD500DFD8D200DDD6D100C0CCD000BECDD100C3D0
224 | D500D9D1CE00DCD3D100D6CECC00BCBCBB000000000000000000000000000000
225 | 0000000000000000000000000000000000000000000000000000000000000000
226 | 0000000000000000000000000000000000000000000000000000000000000000
227 | 0000000000000000000000000000000000000000000000000000000000000000
228 | 000000000000000000000000000000000000424D3E000000000000003E000000
229 | 2800000040000000100000000100010000000000800000000000000000000000
230 | 000000000000000000000000FFFFFF00F33FFFFF00000000F003FFFF00000000
231 | E003FFFF00000000C001800000000000C003000000000000C00F000000000000
232 | C00F000000000000C00F000000000000C00F000000000000C00F000000000000
233 | C00F000000000000C00F000000000000C00F000000000000C00F000000000000
234 | CFFF000000000000FFFF00000000000000000000000000000000000000000000
235 | 000000000000}
236 | end
237 | object PopupMenu1: TPopupMenu
238 | OnPopup = PopupMenu1Popup
239 | Left = 328
240 | Top = 160
241 | object Atualizar1: TMenuItem
242 | Caption = 'Atualizar'
243 | OnClick = Atualizar1Click
244 | end
245 | object N1: TMenuItem
246 | Caption = '-'
247 | end
248 | object BaixarArquivo1: TMenuItem
249 | Caption = 'Baixar Arquivo'
250 | OnClick = BaixarArquivo1Click
251 | end
252 | object EnviarArquivo1: TMenuItem
253 | Caption = 'Enviar Arquivo'
254 | OnClick = EnviarArquivo1Click
255 | end
256 | end
257 | object SaveDialog1: TSaveDialog
258 | Filter = 'Arquivo|*.*'
259 | Left = 312
260 | Top = 120
261 | end
262 | object OpenDialog1: TOpenDialog
263 | Filter = 'Todos os Arquivos|*.*'
264 | Left = 344
265 | Top = 120
266 | end
267 | object Timer1: TTimer
268 | Enabled = False
269 | Interval = 200
270 | OnTimer = Timer1Timer
271 | Left = 480
272 | Top = 184
273 | end
274 | end
275 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/File_Manager.pas:
--------------------------------------------------------------------------------
1 | unit File_Manager;
2 |
3 | interface
4 |
5 | uses
6 | Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
7 | Dialogs, StdCtrls, ComCtrls, ImgList, Menus, ScktComp, ExtCtrls;
8 |
9 | type
10 | TForm3 = class(TForm)
11 | ListView1: TListView;
12 | Edit1: TEdit;
13 | ImageList1: TImageList;
14 | PopupMenu1: TPopupMenu;
15 | BaixarArquivo1: TMenuItem;
16 | EnviarArquivo1: TMenuItem;
17 | SaveDialog1: TSaveDialog;
18 | OpenDialog1: TOpenDialog;
19 | Panel1: TPanel;
20 | Label1: TLabel;
21 | ProgressBar1: TProgressBar;
22 | ProgressBar2: TProgressBar;
23 | Label2: TLabel;
24 | Timer1: TTimer;
25 | Atualizar1: TMenuItem;
26 | N1: TMenuItem;
27 | procedure FormCreate(Sender: TObject);
28 | procedure PopupMenu1Popup(Sender: TObject);
29 | procedure Edit1KeyDown(Sender: TObject; var Key: Word;
30 | Shift: TShiftState);
31 | procedure ListView1DblClick(Sender: TObject);
32 | procedure BaixarArquivo1Click(Sender: TObject);
33 | procedure EnviarArquivo1Click(Sender: TObject);
34 | procedure Timer1Timer(Sender: TObject);
35 | procedure Atualizar1Click(Sender: TObject);
36 | procedure FormClose(Sender: TObject; var Action: TCloseAction);
37 | private
38 | { Private declarations }
39 | public
40 | Socket: TCustomWinSocket;
41 | LocalSalvar: string;
42 | ArquivoEnviar: TMemoryStream;
43 | { Public declarations }
44 | end;
45 |
46 | var
47 | Form3: TForm3;
48 |
49 | implementation
50 |
51 | uses Principal;
52 |
53 | {$R *.dfm}
54 |
55 | procedure TForm3.FormCreate(Sender: TObject);
56 | begin
57 | Edit1.Align := alTop;
58 | ListView1.Align := alClient;
59 | end;
60 |
61 | procedure TForm3.PopupMenu1Popup(Sender: TObject);
62 | begin
63 | if ListView1.ItemIndex < 0 then begin
64 | PopUpMenu1.Items[2].Enabled := false;
65 | exit;
66 | end;
67 |
68 | if ListView1.Selected.SubItems[0] = 'Arquivo' then
69 | PopUpMenu1.Items[2].Enabled := true
70 | else
71 | PopUpMenu1.Items[2].Enabled := false;
72 | end;
73 |
74 | procedure TForm3.Edit1KeyDown(Sender: TObject; var Key: Word;
75 | Shift: TShiftState);
76 | begin
77 |
78 | try
79 | if Key = VK_RETURN then begin
80 | Socket.SendText('<|Folder|>' + Edit1.Text + '<<|');
81 | end except
82 | exit;
83 | end;
84 | end;
85 |
86 | procedure TForm3.ListView1DblClick(Sender: TObject);
87 | begin
88 | if ListView1.Selected.SubItems[0] = 'Arquivo' then
89 | exit;
90 |
91 | if ListView1.Selected.Caption = '..' then begin
92 | Edit1.Text := ExtractFilePath(Copy(Edit1.Text, 1, Length(Edit1.Text) - 1));
93 | Socket.SendText('<|Folder|>' + Edit1.Text + '<<|')
94 | end else begin
95 | if Copy(edit1.Text, Length(Edit1.Text), Length(Edit1.Text)) = '\' then else
96 | Edit1.Text := Edit1.text + '\';
97 |
98 | Edit1.Text := Edit1.Text + ListView1.Selected.Caption + '\';
99 | Socket.SendText('<|Folder|>' + Edit1.Text + '<<|');
100 | end;
101 |
102 |
103 | end;
104 |
105 | procedure TForm3.BaixarArquivo1Click(Sender: TObject);
106 | begin
107 | SaveDialog1.Filter := 'Arquivo ' + ExtractFileExt(ListView1.Selected.Caption) + '|*' + ExtractFileExt(ListView1.Selected.Caption);
108 | if SaveDialog1.Execute then begin
109 | LocalSalvar := SaveDialog1.FileName + ExtractFileExt(ListView1.Selected.Caption);
110 | Socket.SendText('<|DownloadFile|>' + Edit1.Text + '\' + ListView1.Selected.Caption + '<<|');
111 | end;
112 | end;
113 |
114 | procedure TForm3.EnviarArquivo1Click(Sender: TObject);
115 | begin
116 | if Copy(edit1.Text, Length(Edit1.Text), Length(Edit1.Text)) = '\' then else
117 | Edit1.Text := Edit1.text + '\';
118 |
119 | if OpenDialog1.Execute then begin
120 | ArquivoEnviar := TMemoryStream.Create;
121 | ArquivoEnviar.LoadFromFile(OpenDialog1.FileName);
122 | Socket.SendText('<|UploadFile|>' + Edit1.Text + '\' + ExtractFileName(OpenDialog1.FileName) + '<<|');
123 | end;
124 | end;
125 |
126 | procedure TForm3.Timer1Timer(Sender: TObject);
127 | begin
128 | try
129 | ProgressBar2.Position := ArquivoEnviar.Position;
130 | except
131 | ProgressBar2.Position := 0;
132 | Timer1.Enabled := false;
133 | end;
134 | end;
135 |
136 | procedure TForm3.Atualizar1Click(Sender: TObject);
137 | begin
138 | try
139 | Socket.SendText('<|Folder|>' + Edit1.Text + '<<|');
140 | except
141 | exit;
142 | end;
143 | end;
144 |
145 | procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction);
146 | var
147 | L: TListItem;
148 | begin
149 | L := Form1.LV1.FindCaption(0, intToStr(Socket.Handle), false, true, false);
150 | try
151 | if L <> nil then begin
152 | L.SubItems.Objects[4] := nil;
153 | Free;
154 | end;
155 | except
156 | L.SubItems.Objects[4] := nil;
157 | end;
158 |
159 | Destroy;
160 |
161 | end;
162 |
163 | end.
164 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Principal.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/Principal.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Principal.dfm:
--------------------------------------------------------------------------------
1 | object Form1: TForm1
2 | Left = 199
3 | Top = 146
4 | Width = 848
5 | Height = 416
6 | Caption = 'Access PC - Servidor'
7 | Color = clBtnFace
8 | Font.Charset = DEFAULT_CHARSET
9 | Font.Color = clWindowText
10 | Font.Height = -11
11 | Font.Name = 'MS Sans Serif'
12 | Font.Style = []
13 | OldCreateOrder = False
14 | Position = poDesktopCenter
15 | PixelsPerInch = 96
16 | TextHeight = 13
17 | object Panel1: TPanel
18 | Left = 0
19 | Top = 335
20 | Width = 832
21 | Height = 42
22 | Align = alBottom
23 | TabOrder = 0
24 | object Bevel1: TBevel
25 | Left = 328
26 | Top = 0
27 | Width = 17
28 | Height = 41
29 | Shape = bsLeftLine
30 | end
31 | object Label1: TLabel
32 | Left = 104
33 | Top = 15
34 | Width = 28
35 | Height = 13
36 | Caption = 'Porta:'
37 | end
38 | object Label2: TLabel
39 | Left = 200
40 | Top = 14
41 | Width = 34
42 | Height = 13
43 | Caption = 'Senha:'
44 | end
45 | object Button1: TButton
46 | Left = 8
47 | Top = 9
48 | Width = 75
49 | Height = 25
50 | Caption = 'Ativar'
51 | TabOrder = 0
52 | OnClick = Button1Click
53 | end
54 | object Button3: TButton
55 | Left = 336
56 | Top = 8
57 | Width = 75
58 | Height = 25
59 | Caption = 'Sobre'
60 | TabOrder = 1
61 | OnClick = Button3Click
62 | end
63 | object Edit1: TEdit
64 | Left = 136
65 | Top = 11
66 | Width = 49
67 | Height = 21
68 | TabOrder = 2
69 | Text = '6651'
70 | end
71 | object Edit2: TEdit
72 | Left = 240
73 | Top = 10
74 | Width = 73
75 | Height = 21
76 | PasswordChar = '*'
77 | TabOrder = 3
78 | end
79 | end
80 | object LV1: TListView
81 | Left = 0
82 | Top = 0
83 | Width = 832
84 | Height = 316
85 | Align = alClient
86 | Columns = <
87 | item
88 | Caption = 'IDSock'
89 | Width = 70
90 | end
91 | item
92 | Caption = 'Identifica'#231#227'o'
93 | Width = 170
94 | end
95 | item
96 | Caption = 'Sistema Operacional'
97 | Width = 170
98 | end
99 | item
100 | Caption = 'Processador'
101 | Width = 190
102 | end
103 | item
104 | Caption = 'IP'
105 | Width = 150
106 | end
107 | item
108 | Caption = 'Ping'
109 | end>
110 | Enabled = False
111 | GridLines = True
112 | ReadOnly = True
113 | RowSelect = True
114 | PopupMenu = PopupMenu1
115 | TabOrder = 1
116 | ViewStyle = vsReport
117 | end
118 | object StatusBar1: TStatusBar
119 | Left = 0
120 | Top = 316
121 | Width = 832
122 | Height = 19
123 | Panels = <
124 | item
125 | Text = 'Status:'
126 | Width = 50
127 | end
128 | item
129 | Text = 'Desativado'
130 | Width = 100
131 | end>
132 | end
133 | object PopupMenu1: TPopupMenu
134 | Left = 344
135 | Top = 104
136 | object Fecharconexo1: TMenuItem
137 | Caption = 'Acessar Computador'
138 | OnClick = Fecharconexo1Click
139 | end
140 | object Chato1: TMenuItem
141 | Caption = 'Chat'
142 | OnClick = Chato1Click
143 | end
144 | object GerenciadordeArquivos1: TMenuItem
145 | Caption = 'Compartilhador de Arquivos'
146 | OnClick = GerenciadordeArquivos1Click
147 | end
148 | object N1: TMenuItem
149 | Caption = '-'
150 | end
151 | object FecharConexo2: TMenuItem
152 | Caption = 'Fechar Conex'#227'o'
153 | OnClick = FecharConexo2Click
154 | end
155 | end
156 | object SS1: TServerSocket
157 | Active = False
158 | Port = 6651
159 | ServerType = stNonBlocking
160 | OnListen = SS1Listen
161 | OnAccept = SS1Accept
162 | OnClientDisconnect = SS1ClientDisconnect
163 | OnClientError = SS1ClientError
164 | Left = 392
165 | Top = 104
166 | end
167 | object Timer1: TTimer
168 | Interval = 5000
169 | OnTimer = Timer1Timer
170 | Left = 432
171 | Top = 104
172 | end
173 | object ApplicationEvents1: TApplicationEvents
174 | OnException = ApplicationEvents1Exception
175 | Left = 464
176 | Top = 104
177 | end
178 | end
179 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/Principal.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/Principal.pas
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/StreamManager.pas:
--------------------------------------------------------------------------------
1 | unit StreamManager;
2 |
3 | interface
4 |
5 | uses
6 | Windows,Classes,Graphics;
7 |
8 | procedure GetScreenToBmp(DrawCur:Boolean;StreamName:TMemoryStream);
9 | procedure CompareStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
10 | procedure ResumeStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
11 |
12 | implementation
13 |
14 | // Captura a tela
15 | procedure GetScreenToBmp(DrawCur:Boolean;StreamName:TMemoryStream);
16 | var
17 | Mybmp:Tbitmap;
18 | Cursorx, Cursory: integer;
19 | dc: hdc;
20 | Mycan: Tcanvas;
21 | R: TRect;
22 | DrawPos: TPoint;
23 | MyCursor: TIcon;
24 | hld: hwnd;
25 | Threadld: dword;
26 | mp: tpoint;
27 | pIconInfo: TIconInfo;
28 | begin
29 | Mybmp := Tbitmap.Create;
30 | Mycan := TCanvas.Create;
31 | dc := GetWindowDC(0);
32 | try
33 | Mycan.Handle := dc;
34 | R := Rect(0, 0, GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN));
35 | Mybmp.Width := R.Right;
36 | Mybmp.Height := R.Bottom;
37 | Mybmp.Canvas.CopyRect(R, Mycan, R);
38 | finally
39 | releaseDC(0, DC);
40 | end;
41 | Mycan.Handle := 0;
42 | Mycan.Free;
43 |
44 | if DrawCur then
45 | begin
46 | GetCursorPos(DrawPos);
47 | MyCursor := TIcon.Create;
48 | getcursorpos(mp);
49 | hld := WindowFromPoint(mp);
50 | Threadld := GetWindowThreadProcessId(hld, nil);
51 | AttachThreadInput(GetCurrentThreadId, Threadld, True);
52 | MyCursor.Handle := Getcursor();
53 | AttachThreadInput(GetCurrentThreadId, threadld, False);
54 | GetIconInfo(Mycursor.Handle, pIconInfo);
55 | cursorx := DrawPos.x - round(pIconInfo.xHotspot);
56 | cursory := DrawPos.y - round(pIconInfo.yHotspot);
57 | Mybmp.Canvas.Draw(cursorx, cursory, MyCursor);
58 | DeleteObject(pIconInfo.hbmColor);
59 | DeleteObject(pIconInfo.hbmMask);
60 | Mycursor.ReleaseHandle;
61 | MyCursor.Free;
62 | end;
63 | Mybmp.PixelFormat:=pf8bit;
64 | Mybmp.SaveToStream(StreamName);
65 | Mybmp.Free;
66 | end;
67 |
68 | // Compara as Streams e as Separam quando os Pixels da Bitmap forem iguais.
69 | procedure CompareStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
70 | var
71 | I: Integer;
72 | P1, P2, P3: ^Char;
73 | begin
74 | MySecondStream.Clear;
75 | MyCompareStream.Clear;
76 | GetScreenToBmp(true,MySecondStream);
77 |
78 | P1 := MyFirstStream.Memory;
79 | P2 := MySecondStream.Memory;
80 | MyCompareStream.SetSize(MyFirstStream.Size);
81 | P3 := MyCompareStream.Memory;
82 |
83 | for I := 0 to MyFirstStream.Size - 1 do
84 | begin
85 | if P1^ = P2^ then
86 | P3^ := '0'
87 | else
88 | P3^ := P2^;
89 | Inc(P1);
90 | Inc(P2);
91 | Inc(P3);
92 | end;
93 |
94 | MyFirstStream.Clear;
95 | MyFirstStream.CopyFrom(MySecondStream,0);
96 | end;
97 |
98 | // Modifica as Streams para reajustar os Pixels da Bitmap
99 | procedure ResumeStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
100 | var
101 | I: Integer;
102 | P1, P2, P3: ^Char;
103 | begin
104 | P1 := MyFirstStream.Memory;
105 | MySecondStream.SetSize(MyFirstStream.Size);
106 | P2 := MySecondStream.Memory;
107 | P3 := MyCompareStream.Memory;
108 |
109 | for I := 0 to MyFirstStream.Size - 1 do
110 | begin
111 | if P3^ = '0' then
112 | P2^ := p1^
113 | else
114 | P2^ := P3^;
115 | Inc(P1);
116 | Inc(P2);
117 | Inc(P3);
118 | end;
119 |
120 | MyFirstStream.Clear;
121 | MyFirstStream.CopyFrom(MySecondStream,0);
122 | MySecondStream.Position:=0;
123 | end;
124 |
125 | end.
126 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/UAC.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/UAC.RES
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/UAC.manifest:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/UAC.rc:
--------------------------------------------------------------------------------
1 | 1 24 "UAC.manifest"
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/zlib/adler32.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/zlib/adler32.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/zlib/deflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/zlib/deflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/zlib/infblock.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/zlib/infblock.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/zlib/infcodes.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/zlib/infcodes.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/zlib/inffast.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/zlib/inffast.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/zlib/inflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/zlib/inflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/zlib/inftrees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/zlib/inftrees.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/zlib/infutil.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/zlib/infutil.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Servidor/zlib/trees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Servidor/zlib/trees.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Units/StreamManager.pas:
--------------------------------------------------------------------------------
1 | unit StreamManager;
2 |
3 | interface
4 |
5 | uses
6 | Windows,Classes,Graphics;
7 |
8 | procedure GetScreenToBmp(DrawCur:Boolean;StreamName:TMemoryStream);
9 | procedure CompareStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
10 | procedure ResumeStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
11 |
12 | implementation
13 |
14 | // Captura a tela
15 | procedure GetScreenToBmp(DrawCur:Boolean;StreamName:TMemoryStream);
16 | var
17 | Mybmp:Tbitmap;
18 | Cursorx, Cursory: integer;
19 | dc: hdc;
20 | Mycan: Tcanvas;
21 | R: TRect;
22 | DrawPos: TPoint;
23 | MyCursor: TIcon;
24 | hld: hwnd;
25 | Threadld: dword;
26 | mp: tpoint;
27 | pIconInfo: TIconInfo;
28 | begin
29 | Mybmp := Tbitmap.Create;
30 | Mycan := TCanvas.Create;
31 | dc := GetWindowDC(0);
32 | try
33 | Mycan.Handle := dc;
34 | R := Rect(0, 0, GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN));
35 | Mybmp.Width := R.Right;
36 | Mybmp.Height := R.Bottom;
37 | Mybmp.Canvas.CopyRect(R, Mycan, R);
38 | finally
39 | releaseDC(0, DC);
40 | end;
41 | Mycan.Handle := 0;
42 | Mycan.Free;
43 |
44 | if DrawCur then
45 | begin
46 | GetCursorPos(DrawPos);
47 | MyCursor := TIcon.Create;
48 | getcursorpos(mp);
49 | hld := WindowFromPoint(mp);
50 | Threadld := GetWindowThreadProcessId(hld, nil);
51 | AttachThreadInput(GetCurrentThreadId, Threadld, True);
52 | MyCursor.Handle := Getcursor();
53 | AttachThreadInput(GetCurrentThreadId, threadld, False);
54 | GetIconInfo(Mycursor.Handle, pIconInfo);
55 | cursorx := DrawPos.x - round(pIconInfo.xHotspot);
56 | cursory := DrawPos.y - round(pIconInfo.yHotspot);
57 | Mybmp.Canvas.Draw(cursorx, cursory, MyCursor);
58 | DeleteObject(pIconInfo.hbmColor);
59 | DeleteObject(pIconInfo.hbmMask);
60 | Mycursor.ReleaseHandle;
61 | MyCursor.Free;
62 | end;
63 | Mybmp.PixelFormat:=pf8bit;
64 | Mybmp.SaveToStream(StreamName);
65 | Mybmp.Free;
66 | end;
67 |
68 | // Compara as Streams e as Separam quando os Pixels da Bitmap forem iguais.
69 | procedure CompareStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
70 | var
71 | I: Integer;
72 | P1, P2, P3: ^Char;
73 | begin
74 | MySecondStream.Clear;
75 | MyCompareStream.Clear;
76 | GetScreenToBmp(true,MySecondStream);
77 |
78 | P1 := MyFirstStream.Memory;
79 | P2 := MySecondStream.Memory;
80 | MyCompareStream.SetSize(MyFirstStream.Size);
81 | P3 := MyCompareStream.Memory;
82 |
83 | for I := 0 to MyFirstStream.Size - 1 do
84 | begin
85 | if P1^ = P2^ then
86 | P3^ := '0'
87 | else
88 | P3^ := P2^;
89 | Inc(P1);
90 | Inc(P2);
91 | Inc(P3);
92 | end;
93 |
94 | MyFirstStream.Clear;
95 | MyFirstStream.CopyFrom(MySecondStream,0);
96 | end;
97 |
98 | // Modifica as Streams para reajustar os Pixels da Bitmap
99 | procedure ResumeStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
100 | var
101 | I: Integer;
102 | P1, P2, P3: ^Char;
103 | begin
104 | P1 := MyFirstStream.Memory;
105 | MySecondStream.SetSize(MyFirstStream.Size);
106 | P2 := MySecondStream.Memory;
107 | P3 := MyCompareStream.Memory;
108 |
109 | for I := 0 to MyFirstStream.Size - 1 do
110 | begin
111 | if P3^ = '0' then
112 | P2^ := p1^
113 | else
114 | P2^ := P3^;
115 | Inc(P1);
116 | Inc(P2);
117 | Inc(P3);
118 | end;
119 |
120 | MyFirstStream.Clear;
121 | MyFirstStream.CopyFrom(MySecondStream,0);
122 | MySecondStream.Position:=0;
123 | end;
124 |
125 | end.
126 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Units/sndkey32.pas:
--------------------------------------------------------------------------------
1 | (*
2 | SendKeys routine for 32-bit Delphi.
3 |
4 | Written by Ken Henderson
5 |
6 | Copyright (c) 1995 Ken Henderson
7 |
8 | This unit includes two routines that simulate popular Visual Basic
9 | routines: Sendkeys and AppActivate. SendKeys takes a PChar
10 | as its first parameter and a boolean as its second, like so:
11 |
12 | SendKeys('KeyString', Wait);
13 |
14 | where KeyString is a string of key names and modifiers that you want
15 | to send to the current input focus and Wait is a boolean variable or value
16 | that indicates whether SendKeys should wait for each key message to be
17 | processed before proceeding. See the table below for more information.
18 |
19 | AppActivate also takes a PChar as its only parameter, like so:
20 |
21 | AppActivate('WindowName');
22 |
23 | where WindowName is the name of the window that you want to make the
24 | current input focus.
25 |
26 | SendKeys supports the Visual Basic SendKeys syntax, as documented below.
27 |
28 | Supported modifiers:
29 |
30 | + = Shift
31 | ^ = Control
32 | % = Alt
33 |
34 | Surround sequences of characters or key names with parentheses in order to
35 | modify them as a group. For example, '+abc' shifts only 'a', while '+(abc)' shifts
36 | all three characters.
37 |
38 | Supported special characters
39 |
40 | ~ = Enter
41 | ( = Begin modifier group (see above)
42 | ) = End modifier group (see above)
43 | { = Begin key name text (see below)
44 | } = End key name text (see below)
45 |
46 | Supported characters:
47 |
48 | Any character that can be typed is supported. Surround the modifier keys
49 | listed above with braces in order to send as normal text.
50 |
51 | Supported key names (surround these with braces):
52 |
53 | BKSP, BS, BACKSPACE
54 | BREAK
55 | CAPSLOCK
56 | CLEAR
57 | DEL
58 | DELETE
59 | DOWN
60 | END
61 | ENTER
62 | ESC
63 | ESCAPE
64 | F1
65 | F2
66 | F3
67 | F4
68 | F5
69 | F6
70 | F7
71 | F8
72 | F9
73 | F10
74 | F11
75 | F12
76 | F13
77 | F14
78 | F15
79 | F16
80 | HELP
81 | HOME
82 | INS
83 | LEFT
84 | NUMLOCK
85 | PGDN
86 | PGUP
87 | PRTSC
88 | RIGHT
89 | SCROLLLOCK
90 | TAB
91 | UP
92 |
93 | Follow the keyname with a space and a number to send the specified key a
94 | given number of times (e.g., {left 6}).
95 | *)
96 |
97 | unit sndkey32;
98 |
99 | interface
100 |
101 | Uses SysUtils, Windows, Messages;
102 |
103 | Function SendKeys(SendKeysString : PChar; Wait : Boolean) : Boolean;
104 | function AppActivate(WindowName : PChar) : boolean; overload;
105 | function AppActivate(WindowHandle : HWND) : boolean; overload;
106 |
107 | {Buffer for working with PChar's}
108 |
109 | const
110 | WorkBufLen = 40;
111 | var
112 | WorkBuf : array[0..WorkBufLen] of Char;
113 |
114 | implementation
115 | type
116 | THKeys = array[0..pred(MaxLongInt)] of byte;
117 | var
118 | AllocationSize : integer;
119 |
120 | (*
121 | Converts a string of characters and key names to keyboard events and
122 | passes them to Windows.
123 |
124 | Example syntax:
125 |
126 | SendKeys('abc123{left}{left}{left}def{end}456{left 6}ghi{end}789', True);
127 |
128 | *)
129 |
130 | Function SendKeys(SendKeysString : PChar; Wait : Boolean) : Boolean;
131 | type
132 | WBytes = array[0..pred(SizeOf(Word))] of Byte;
133 |
134 | TSendKey = record
135 | Name : ShortString;
136 | VKey : Byte;
137 | end;
138 |
139 | const
140 | {Array of keys that SendKeys recognizes.
141 |
142 | If you add to this list, you must be sure to keep it sorted alphabetically
143 | by Name because a binary search routine is used to scan it.}
144 |
145 | MaxSendKeyRecs = 41;
146 | SendKeyRecs : array[1..MaxSendKeyRecs] of TSendKey =
147 | (
148 | (Name:'BACKSPACE'; VKey:VK_BACK),
149 | (Name:'BKSP'; VKey:VK_BACK),
150 | (Name:'BREAK'; VKey:VK_CANCEL),
151 | (Name:'BS'; VKey:VK_BACK),
152 | (Name:'CAPSLOCK'; VKey:VK_CAPITAL),
153 | (Name:'CLEAR'; VKey:VK_CLEAR),
154 | (Name:'DEL'; VKey:VK_DELETE),
155 | (Name:'DELETE'; VKey:VK_DELETE),
156 | (Name:'DOWN'; VKey:VK_DOWN),
157 | (Name:'END'; VKey:VK_END),
158 | (Name:'ENTER'; VKey:VK_RETURN),
159 | (Name:'ESC'; VKey:VK_ESCAPE),
160 | (Name:'ESCAPE'; VKey:VK_ESCAPE),
161 | (Name:'F1'; VKey:VK_F1),
162 | (Name:'F10'; VKey:VK_F10),
163 | (Name:'F11'; VKey:VK_F11),
164 | (Name:'F12'; VKey:VK_F12),
165 | (Name:'F13'; VKey:VK_F13),
166 | (Name:'F14'; VKey:VK_F14),
167 | (Name:'F15'; VKey:VK_F15),
168 | (Name:'F16'; VKey:VK_F16),
169 | (Name:'F2'; VKey:VK_F2),
170 | (Name:'F3'; VKey:VK_F3),
171 | (Name:'F4'; VKey:VK_F4),
172 | (Name:'F5'; VKey:VK_F5),
173 | (Name:'F6'; VKey:VK_F6),
174 | (Name:'F7'; VKey:VK_F7),
175 | (Name:'F8'; VKey:VK_F8),
176 | (Name:'F9'; VKey:VK_F9),
177 | (Name:'HELP'; VKey:VK_HELP),
178 | (Name:'HOME'; VKey:VK_HOME),
179 | (Name:'INS'; VKey:VK_INSERT),
180 | (Name:'LEFT'; VKey:VK_LEFT),
181 | (Name:'NUMLOCK'; VKey:VK_NUMLOCK),
182 | (Name:'PGDN'; VKey:VK_NEXT),
183 | (Name:'PGUP'; VKey:VK_PRIOR),
184 | (Name:'PRTSC'; VKey:VK_PRINT),
185 | (Name:'RIGHT'; VKey:VK_RIGHT),
186 | (Name:'SCROLLLOCK'; VKey:VK_SCROLL),
187 | (Name:'TAB'; VKey:VK_TAB),
188 | (Name:'UP'; VKey:VK_UP)
189 | );
190 |
191 | {Extra VK constants missing from Delphi's Windows API interface}
192 | VK_NULL=0;
193 | VK_SemiColon=186;
194 | VK_Equal=187;
195 | VK_Comma=188;
196 | VK_Minus=189;
197 | VK_Period=190;
198 | VK_Slash=191;
199 | VK_BackQuote=192;
200 | VK_LeftBracket=219;
201 | VK_BackSlash=220;
202 | VK_RightBracket=221;
203 | VK_Quote=222;
204 | VK_Last=VK_Quote;
205 |
206 | ExtendedVKeys : set of byte =
207 | [VK_Up,
208 | VK_Down,
209 | VK_Left,
210 | VK_Right,
211 | VK_Home,
212 | VK_End,
213 | VK_Prior, {PgUp}
214 | VK_Next, {PgDn}
215 | VK_Insert,
216 | VK_Delete];
217 |
218 | const
219 | INVALIDKEY = $FFFF {Unsigned -1};
220 | VKKEYSCANSHIFTON = $01;
221 | VKKEYSCANCTRLON = $02;
222 | VKKEYSCANALTON = $04;
223 | UNITNAME = 'SendKeys';
224 | var
225 | UsingParens, ShiftDown, ControlDown, AltDown, FoundClose : Boolean;
226 | PosSpace : Byte;
227 | I, L : Integer;
228 | NumTimes, MKey : Word;
229 | KeyString : String[20];
230 |
231 | procedure DisplayMessage(Message : PChar);
232 | begin
233 | // MessageBox(0,Message,UNITNAME,0);
234 | end;
235 |
236 | function BitSet(BitTable, BitMask : Byte) : Boolean;
237 | begin
238 | Result:=ByteBool(BitTable and BitMask);
239 | end;
240 |
241 | procedure SetBit(var BitTable : Byte; BitMask : Byte);
242 | begin
243 | BitTable:=BitTable or Bitmask;
244 | end;
245 |
246 | Procedure KeyboardEvent(VKey, ScanCode : Byte; Flags : Longint);
247 | var
248 | KeyboardMsg : TMsg;
249 | begin
250 | keybd_event(VKey, ScanCode, Flags,0);
251 | If (Wait) then While (PeekMessage(KeyboardMsg,0,WM_KEYFIRST, WM_KEYLAST, PM_REMOVE)) do begin
252 | TranslateMessage(KeyboardMsg);
253 | DispatchMessage(KeyboardMsg);
254 | end;
255 | end;
256 |
257 | Procedure SendKeyDown(VKey: Byte; NumTimes : Word; GenUpMsg : Boolean);
258 | var
259 | Cnt : Word;
260 | ScanCode : Byte;
261 | NumState : Boolean;
262 | KeyBoardState : TKeyboardState;
263 | begin
264 | If (VKey=VK_NUMLOCK) then begin
265 | NumState:=ByteBool(GetKeyState(VK_NUMLOCK) and 1);
266 | GetKeyBoardState(KeyBoardState);
267 | If NumState then KeyBoardState[VK_NUMLOCK]:=(KeyBoardState[VK_NUMLOCK] and not 1)
268 | else KeyBoardState[VK_NUMLOCK]:=(KeyBoardState[VK_NUMLOCK] or 1);
269 | SetKeyBoardState(KeyBoardState);
270 | exit;
271 | end;
272 |
273 | ScanCode:=Lo(MapVirtualKey(VKey,0));
274 | For Cnt:=1 to NumTimes do
275 | If (VKey in ExtendedVKeys)then begin
276 | KeyboardEvent(VKey, ScanCode, KEYEVENTF_EXTENDEDKEY);
277 | If (GenUpMsg) then
278 | KeyboardEvent(VKey, ScanCode, KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP)
279 | end else begin
280 | KeyboardEvent(VKey, ScanCode, 0);
281 | If (GenUpMsg) then KeyboardEvent(VKey, ScanCode, KEYEVENTF_KEYUP);
282 | end;
283 | end;
284 |
285 | Procedure SendKeyUp(VKey: Byte);
286 | var
287 | ScanCode : Byte;
288 | begin
289 | ScanCode:=Lo(MapVirtualKey(VKey,0));
290 | If (VKey in ExtendedVKeys)then
291 | KeyboardEvent(VKey, ScanCode, KEYEVENTF_EXTENDEDKEY and KEYEVENTF_KEYUP)
292 | else KeyboardEvent(VKey, ScanCode, KEYEVENTF_KEYUP);
293 | end;
294 |
295 | Procedure SendKey(MKey: Word; NumTimes : Word; GenDownMsg : Boolean);
296 | begin
297 | If (BitSet(Hi(MKey),VKKEYSCANSHIFTON)) then SendKeyDown(VK_SHIFT,1,False);
298 | If (BitSet(Hi(MKey),VKKEYSCANCTRLON)) then SendKeyDown(VK_CONTROL,1,False);
299 | If (BitSet(Hi(MKey),VKKEYSCANALTON)) then SendKeyDown(VK_MENU,1,False);
300 | SendKeyDown(Lo(MKey), NumTimes, GenDownMsg);
301 | If (BitSet(Hi(MKey),VKKEYSCANSHIFTON)) then SendKeyUp(VK_SHIFT);
302 | If (BitSet(Hi(MKey),VKKEYSCANCTRLON)) then SendKeyUp(VK_CONTROL);
303 | If (BitSet(Hi(MKey),VKKEYSCANALTON)) then SendKeyUp(VK_MENU);
304 | end;
305 |
306 | {Implements a simple binary search to locate special key name strings}
307 |
308 | Function StringToVKey(KeyString : ShortString) : Word;
309 | var
310 | Found, Collided : Boolean;
311 | Bottom, Top, Middle : Byte;
312 | begin
313 | Result:=INVALIDKEY;
314 | Bottom:=1;
315 | Top:=MaxSendKeyRecs;
316 | Found:=false;
317 | Middle:=(Bottom+Top) div 2;
318 | Repeat
319 | Collided:=((Bottom=Middle) or (Top=Middle));
320 | If (KeyString=SendKeyRecs[Middle].Name) then begin
321 | Found:=True;
322 | Result:=SendKeyRecs[Middle].VKey;
323 | end else begin
324 | If (KeyString>SendKeyRecs[Middle].Name) then Bottom:=Middle
325 | else Top:=Middle;
326 | Middle:=(Succ(Bottom+Top)) div 2;
327 | end;
328 | Until (Found or Collided);
329 | If (Result=INVALIDKEY) then DisplayMessage('Invalid Key Name');
330 | end;
331 |
332 | procedure PopUpShiftKeys;
333 | begin
334 | If (not UsingParens) then begin
335 | If ShiftDown then SendKeyUp(VK_SHIFT);
336 | If ControlDown then SendKeyUp(VK_CONTROL);
337 | If AltDown then SendKeyUp(VK_MENU);
338 | ShiftDown:=false;
339 | ControlDown:=false;
340 | AltDown:=false;
341 | end;
342 | end;
343 |
344 | begin
345 | AllocationSize:=MaxInt;
346 | Result:=false;
347 | UsingParens:=false;
348 | ShiftDown:=false;
349 | ControlDown:=false;
350 | AltDown:=false;
351 | I:=0;
352 | L:=StrLen(SendKeysString);
353 | If (L>AllocationSize) then L:=AllocationSize;
354 | If (L=0) then Exit;
355 |
356 | While (I0) then begin
417 | NumTimes:=StrToInt(Copy(KeyString,Succ(PosSpace),Length(KeyString)-PosSpace));
418 | KeyString:=Copy(KeyString,1,Pred(PosSpace));
419 | end;
420 | If (Length(KeyString)=1) then MKey:=vkKeyScan(KeyString[1])
421 | else MKey:=StringToVKey(KeyString);
422 | If (MKey<>INVALIDKEY) then begin
423 | SendKey(MKey,NumTimes,True);
424 | PopUpShiftKeys;
425 | Continue;
426 | end;
427 | end;
428 | '~' : begin
429 | SendKeyDown(VK_RETURN,1,True);
430 | PopUpShiftKeys;
431 | Inc(I);
432 | end;
433 | else begin
434 | MKey:=vkKeyScan(SendKeysString[I]);
435 | If (MKey<>INVALIDKEY) then begin
436 | SendKey(MKey,1,True);
437 | PopUpShiftKeys;
438 | end else DisplayMessage('Invalid KeyName');
439 | Inc(I);
440 | end;
441 | end;
442 | end;
443 | Result:=true;
444 | PopUpShiftKeys;
445 | end;
446 |
447 | {AppActivate
448 |
449 | This is used to set the current input focus to a given window using its
450 | name. This is especially useful for ensuring a window is active before
451 | sending it input messages using the SendKeys function. You can specify
452 | a window's name in its entirety, or only portion of it, beginning from
453 | the left.
454 |
455 | }
456 |
457 |
458 | var
459 | WindowHandle : HWND;
460 |
461 | function EnumWindowsProc(WHandle: HWND; lParam: LPARAM): BOOL; export; stdcall;
462 | var
463 | WindowName : array[0..MAX_PATH] of char;
464 | begin
465 | {Can't test GetWindowText's return value since some windows don't have a title}
466 | GetWindowText(WHandle,WindowName,MAX_PATH);
467 | Result := (StrLIComp(WindowName,PChar(lParam), StrLen(PChar(lParam))) <> 0);
468 | If (not Result) then WindowHandle:=WHandle;
469 | end;
470 |
471 | function AppActivate(WindowHandle : HWND) : boolean; overload;
472 | begin
473 | try
474 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_HOTKEY, WindowHandle);
475 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_RESTORE, WindowHandle);
476 | result := SetForegroundWindow(WindowHandle);
477 | except
478 | on Exception do Result:=false;
479 | end;
480 | end;
481 |
482 | function AppActivate(WindowName : PChar) : boolean; overload;
483 | begin
484 | try
485 | Result:=true;
486 | WindowHandle:=FindWindow(nil,WindowName);
487 | If (WindowHandle=0) then EnumWindows(@EnumWindowsProc,Integer(PChar(WindowName)));
488 | If (WindowHandle<>0) then begin
489 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_HOTKEY, WindowHandle);
490 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_RESTORE, WindowHandle);
491 | SetForegroundWindow(WindowHandle);
492 | end else Result:=false;
493 | except
494 | on Exception do Result:=false;
495 | end;
496 | end;
497 |
498 |
499 |
500 | end.
501 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Units/zlib/adler32.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Units/zlib/adler32.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Units/zlib/deflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Units/zlib/deflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Units/zlib/infblock.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Units/zlib/infblock.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Units/zlib/infcodes.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Units/zlib/infcodes.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Units/zlib/inffast.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Units/zlib/inffast.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Units/zlib/inflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Units/zlib/inflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Units/zlib/inftrees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Units/zlib/inftrees.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Units/zlib/infutil.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Units/zlib/infutil.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi 7/Units/zlib/trees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi 7/Units/zlib/trees.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Bin/Alerta.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Bin/Alerta.wav
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Access_PC_Client.cfg:
--------------------------------------------------------------------------------
1 | -$A8
2 | -$B-
3 | -$C+
4 | -$D+
5 | -$E-
6 | -$F-
7 | -$G+
8 | -$H+
9 | -$I+
10 | -$J-
11 | -$K-
12 | -$L+
13 | -$M-
14 | -$N+
15 | -$O+
16 | -$P+
17 | -$Q-
18 | -$R-
19 | -$S-
20 | -$T-
21 | -$U-
22 | -$V+
23 | -$W-
24 | -$X+
25 | -$YD
26 | -$Z1
27 | -cg
28 | -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
29 | -H+
30 | -W+
31 | -M
32 | -$M16384,1048576
33 | -K$00400000
34 | -E"..\Bin\"
35 | -LE"c:\program files (x86)\borland\delphi7\Projects\Bpl"
36 | -LN"c:\program files (x86)\borland\delphi7\Projects\Bpl"
37 | -w-UNSAFE_TYPE
38 | -w-UNSAFE_CODE
39 | -w-UNSAFE_CAST
40 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Access_PC_Client.dof:
--------------------------------------------------------------------------------
1 | [FileVersion]
2 | Version=7.0
3 | [Compiler]
4 | A=8
5 | B=0
6 | C=1
7 | D=1
8 | E=0
9 | F=0
10 | G=1
11 | H=1
12 | I=1
13 | J=0
14 | K=0
15 | L=1
16 | M=0
17 | N=1
18 | O=1
19 | P=1
20 | Q=0
21 | R=0
22 | S=0
23 | T=0
24 | U=0
25 | V=1
26 | W=0
27 | X=1
28 | Y=1
29 | Z=1
30 | ShowHints=1
31 | ShowWarnings=1
32 | UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
33 | NamespacePrefix=
34 | SymbolDeprecated=1
35 | SymbolLibrary=1
36 | SymbolPlatform=1
37 | UnitLibrary=1
38 | UnitPlatform=1
39 | UnitDeprecated=1
40 | HResultCompat=1
41 | HidingMember=1
42 | HiddenVirtual=1
43 | Garbage=1
44 | BoundsError=1
45 | ZeroNilCompat=1
46 | StringConstTruncated=1
47 | ForLoopVarVarPar=1
48 | TypedConstVarPar=1
49 | AsgToTypedConst=1
50 | CaseLabelRange=1
51 | ForVariable=1
52 | ConstructingAbstract=1
53 | ComparisonFalse=1
54 | ComparisonTrue=1
55 | ComparingSignedUnsigned=1
56 | CombiningSignedUnsigned=1
57 | UnsupportedConstruct=1
58 | FileOpen=1
59 | FileOpenUnitSrc=1
60 | BadGlobalSymbol=1
61 | DuplicateConstructorDestructor=1
62 | InvalidDirective=1
63 | PackageNoLink=1
64 | PackageThreadVar=1
65 | ImplicitImport=1
66 | HPPEMITIgnored=1
67 | NoRetVal=1
68 | UseBeforeDef=1
69 | ForLoopVarUndef=1
70 | UnitNameMismatch=1
71 | NoCFGFileFound=1
72 | MessageDirective=1
73 | ImplicitVariants=1
74 | UnicodeToLocale=1
75 | LocaleToUnicode=1
76 | ImagebaseMultiple=1
77 | SuspiciousTypecast=1
78 | PrivatePropAccessor=1
79 | UnsafeType=0
80 | UnsafeCode=0
81 | UnsafeCast=0
82 | [Linker]
83 | MapFile=0
84 | OutputObjs=0
85 | ConsoleApp=1
86 | DebugInfo=0
87 | RemoteSymbols=0
88 | MinStackSize=16384
89 | MaxStackSize=1048576
90 | ImageBase=4194304
91 | ExeDescription=
92 | [Directories]
93 | OutputDir=..\Bin\
94 | UnitOutputDir=
95 | PackageDLLOutputDir=
96 | PackageDCPOutputDir=
97 | SearchPath=
98 | Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;dclOfficeXP;CoolTrayIcon_D6plus
99 | Conditionals=
100 | DebugSourceDirs=
101 | UsePackages=0
102 | [Parameters]
103 | RunParams=
104 | HostApplication=
105 | Launcher=
106 | UseLauncher=0
107 | DebugCWD=
108 | [Language]
109 | ActiveLang=
110 | ProjectLang=
111 | RootDir=
112 | [Version Info]
113 | IncludeVerInfo=1
114 | AutoIncBuild=0
115 | MajorVer=1
116 | MinorVer=1
117 | Release=8
118 | Build=27
119 | Debug=0
120 | PreRelease=0
121 | Special=0
122 | Private=0
123 | DLL=0
124 | Locale=1046
125 | CodePage=1252
126 | [Version Info Keys]
127 | CompanyName=Deploy Team
128 | FileDescription=Acesso Remoto
129 | FileVersion=1.1.8.27
130 | InternalName=Access PC
131 | LegalCopyright=Deploy Team
132 | LegalTrademarks=Deploy Team
133 | OriginalFilename=Access PC
134 | ProductName=Access PC
135 | ProductVersion=1.0.0.0
136 | Comments=Acesso Remoto
137 | [HistoryLists\hlUnitAliases]
138 | Count=1
139 | Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
140 | [HistoryLists\hlOutputDirectorry]
141 | Count=1
142 | Item0=..\Bin\
143 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Access_PC_Client.dpr:
--------------------------------------------------------------------------------
1 | {$IMAGEBASE 12348762}
2 | program Access_PC_Client;
3 |
4 | uses
5 | Forms,
6 | Conectar in 'Conectar.pas' {Form1},
7 | Chat in 'Chat.pas' {Form2};
8 |
9 | {$R *.res}
10 |
11 | begin
12 | Application.Initialize;
13 | Application.Title := 'Access PC';
14 | Application.CreateForm(TForm1, Form1);
15 | Application.CreateForm(TForm2, Form2);
16 | Application.Run;
17 | end.
18 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Access_PC_Client.dproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | {0C310304-622A-49B2-8008-A8BDF78FA975}
4 | Access_PC_Client.dpr
5 | True
6 | Release
7 | 1
8 | Application
9 | VCL
10 | 15.4
11 | Win32
12 |
13 |
14 | true
15 |
16 |
17 | true
18 | Base
19 | true
20 |
21 |
22 | true
23 | Base
24 | true
25 |
26 |
27 | true
28 | Base
29 | true
30 |
31 |
32 | true
33 | Cfg_1
34 | true
35 | true
36 |
37 |
38 | true
39 | Base
40 | true
41 |
42 |
43 | true
44 | Cfg_2
45 | true
46 | true
47 |
48 |
49 | Access_PC_Client
50 | true
51 | 1
52 | 8
53 | vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;dclOfficeXP;CoolTrayIcon_D6plus;$(DCC_UsePackage)
54 | 1046
55 | true
56 | 1
57 | false
58 | 00400000
59 | 27
60 | true
61 | ..\Bin\
62 | false
63 | false
64 | Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;System.Win;$(DCC_Namespace)
65 | CompanyName=Deploy Team;FileDescription=Acesso Remoto;FileVersion=1.1.8.27;InternalName=Access PC;LegalCopyright=Deploy Team;LegalTrademarks=Deploy Team;OriginalFilename=Access PC;ProductName=Access PC;ProductVersion=1.0.0.0;Comments=Acesso Remoto
66 | false
67 |
68 |
69 | $(BDS)\bin\default_app.manifest
70 | true
71 | 1033
72 | CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
73 | Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
74 | Access_PC_Client_Icon.ico
75 |
76 |
77 | Access_PC_Client_Icon.ico
78 |
79 |
80 | 0
81 | 0
82 | false
83 | RELEASE;$(DCC_Define)
84 |
85 |
86 | UAC.manifest
87 | CompanyName=;FileDescription=;FileVersion=1.1.8.27;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
88 | 1033
89 |
90 |
91 | DEBUG;$(DCC_Define)
92 | true
93 | false
94 |
95 |
96 | UAC.manifest
97 | 0
98 | 0
99 | 1033
100 | CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
101 | 0
102 |
103 |
104 |
105 | MainSource
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 | Cfg_2
115 | Base
116 |
117 |
118 | Base
119 |
120 |
121 | Cfg_1
122 | Base
123 |
124 |
125 |
126 | Delphi.Personality.12
127 |
128 |
129 |
130 |
131 | Access_PC_Client.dpr
132 |
133 |
134 | True
135 | False
136 | 1
137 | 1
138 | 8
139 | 27
140 | False
141 | False
142 | False
143 | False
144 | False
145 | 1046
146 | 1252
147 |
148 |
149 | Deploy Team
150 | Acesso Remoto
151 | 1.1.8.27
152 | Access PC
153 | Deploy Team
154 | Deploy Team
155 | Access PC
156 | Access PC
157 | 1.0.0.0
158 | Acesso Remoto
159 |
160 |
161 | Embarcadero C++Builder Office 2000 Servers Package
162 | Embarcadero C++Builder Office XP Servers Package
163 | Microsoft Office 2000 Sample Automation Server Wrapper Components
164 | Microsoft Office XP Sample Automation Server Wrapper Components
165 |
166 |
167 |
168 | True
169 | False
170 |
171 |
172 | 12
173 |
174 |
175 |
176 |
177 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Access_PC_Client.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/Access_PC_Client.res
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Access_PC_Client_Icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/Access_PC_Client_Icon.ico
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Chat.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/Chat.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Chat.dfm:
--------------------------------------------------------------------------------
1 | object Form2: TForm2
2 | Left = 553
3 | Top = 144
4 | Caption = 'Access PC - Chat'
5 | ClientHeight = 248
6 | ClientWidth = 557
7 | Color = clBtnFace
8 | Font.Charset = DEFAULT_CHARSET
9 | Font.Color = clWindowText
10 | Font.Height = -11
11 | Font.Name = 'MS Sans Serif'
12 | Font.Style = []
13 | OldCreateOrder = False
14 | Position = poDesktopCenter
15 | OnClose = FormClose
16 | PixelsPerInch = 96
17 | TextHeight = 13
18 | object Memo2: TMemo
19 | Left = 0
20 | Top = 0
21 | Width = 557
22 | Height = 167
23 | Align = alClient
24 | ReadOnly = True
25 | ScrollBars = ssVertical
26 | TabOrder = 1
27 | end
28 | object Memo1: TMemo
29 | Left = 0
30 | Top = 167
31 | Width = 557
32 | Height = 81
33 | Align = alBottom
34 | ScrollBars = ssVertical
35 | TabOrder = 0
36 | OnKeyDown = Memo1KeyDown
37 | OnKeyUp = Memo1KeyUp
38 | end
39 | end
40 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Chat.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/Chat.pas
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Conectar.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/Conectar.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Conectar.dfm:
--------------------------------------------------------------------------------
1 | object Form1: TForm1
2 | Left = 192
3 | Top = 124
4 | BorderIcons = [biSystemMenu, biMinimize]
5 | BorderStyle = bsSingle
6 | Caption = 'Access PC'
7 | ClientHeight = 164
8 | ClientWidth = 293
9 | Color = clBtnFace
10 | Font.Charset = DEFAULT_CHARSET
11 | Font.Color = clWindowText
12 | Font.Height = -11
13 | Font.Name = 'MS Sans Serif'
14 | Font.Style = []
15 | OldCreateOrder = False
16 | Position = poDesktopCenter
17 | PixelsPerInch = 96
18 | TextHeight = 13
19 | object Label1: TLabel
20 | Left = 8
21 | Top = 16
22 | Width = 40
23 | Height = 13
24 | Caption = 'IP/Host:'
25 | end
26 | object Label2: TLabel
27 | Left = 200
28 | Top = 16
29 | Width = 28
30 | Height = 13
31 | Caption = 'Porta:'
32 | end
33 | object Label3: TLabel
34 | Left = 8
35 | Top = 48
36 | Width = 34
37 | Height = 13
38 | Caption = 'Senha:'
39 | end
40 | object Label4: TLabel
41 | Left = 8
42 | Top = 77
43 | Width = 64
44 | Height = 13
45 | Caption = 'Identifica'#231#227'o:'
46 | end
47 | object Edit1: TEdit
48 | Left = 56
49 | Top = 12
50 | Width = 121
51 | Height = 21
52 | TabOrder = 0
53 | end
54 | object Edit2: TEdit
55 | Left = 232
56 | Top = 12
57 | Width = 49
58 | Height = 21
59 | TabOrder = 1
60 | Text = '6651'
61 | end
62 | object Edit3: TEdit
63 | Left = 56
64 | Top = 44
65 | Width = 225
66 | Height = 21
67 | PasswordChar = '*'
68 | TabOrder = 2
69 | end
70 | object Button1: TButton
71 | Left = 8
72 | Top = 112
73 | Width = 75
74 | Height = 25
75 | Caption = 'Conectar'
76 | TabOrder = 4
77 | OnClick = Button1Click
78 | end
79 | object StatusBar1: TStatusBar
80 | Left = 0
81 | Top = 145
82 | Width = 293
83 | Height = 19
84 | Panels = <
85 | item
86 | Text = 'Status:'
87 | Width = 50
88 | end
89 | item
90 | Text = 'Desconectado'
91 | Width = 150
92 | end>
93 | end
94 | object Edit4: TEdit
95 | Left = 80
96 | Top = 73
97 | Width = 201
98 | Height = 21
99 | TabOrder = 3
100 | Text = 'Access PC - Cliente'
101 | end
102 | object CheckBox1: TCheckBox
103 | Left = 88
104 | Top = 116
105 | Width = 201
106 | Height = 17
107 | Caption = 'Auto reconectar se perder Conex'#227'o'
108 | TabOrder = 5
109 | end
110 | object CS1: TClientSocket
111 | Active = False
112 | ClientType = ctNonBlocking
113 | Port = 0
114 | OnConnecting = CS1Connecting
115 | OnConnect = CS1Connect
116 | OnDisconnect = CS1Disconnect
117 | OnRead = CS1Read
118 | OnError = CS1Error
119 | Left = 88
120 | Top = 88
121 | end
122 | object CS2: TClientSocket
123 | Active = False
124 | ClientType = ctNonBlocking
125 | Port = 0
126 | OnConnect = CS2Connect
127 | OnRead = CS2Read
128 | OnError = CS2Error
129 | Left = 120
130 | Top = 88
131 | end
132 | object CS3: TClientSocket
133 | Active = False
134 | ClientType = ctNonBlocking
135 | Port = 0
136 | OnConnect = CS3Connect
137 | OnRead = CS3Read
138 | OnError = CS3Error
139 | Left = 152
140 | Top = 88
141 | end
142 | object Timer1: TTimer
143 | Enabled = False
144 | Interval = 15000
145 | OnTimer = Timer1Timer
146 | Left = 256
147 | Top = 56
148 | end
149 | object Timer2: TTimer
150 | Enabled = False
151 | Interval = 15000
152 | OnTimer = Timer2Timer
153 | Left = 224
154 | Top = 56
155 | end
156 | object CS4: TClientSocket
157 | Active = False
158 | ClientType = ctNonBlocking
159 | Port = 0
160 | OnConnect = CS4Connect
161 | OnRead = CS4Read
162 | OnError = CS4Error
163 | Left = 184
164 | Top = 88
165 | end
166 | object CS5: TClientSocket
167 | Active = False
168 | ClientType = ctNonBlocking
169 | Port = 0
170 | OnConnect = CS6Connect
171 | OnRead = CS5Read
172 | OnError = CS6Error
173 | Left = 216
174 | Top = 88
175 | end
176 | end
177 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/Conectar.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/Conectar.pas
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/StreamManager.pas:
--------------------------------------------------------------------------------
1 | unit StreamManager;
2 |
3 | interface
4 |
5 | uses
6 | Windows, Classes, Graphics;
7 |
8 | procedure GetScreenToBmp(DrawCur: Boolean; StreamName: TMemoryStream);
9 | procedure CompareStream(MyFirstStream, MySecondStream, MyCompareStream
10 | : TMemoryStream);
11 | procedure ResumeStream(MyFirstStream, MySecondStream, MyCompareStream
12 | : TMemoryStream);
13 |
14 | implementation
15 |
16 | // Captura a tela
17 | procedure GetScreenToBmp(DrawCur: Boolean; StreamName: TMemoryStream);
18 | var
19 | Mybmp: Tbitmap;
20 | Cursorx, Cursory: integer;
21 | dc: hdc;
22 | Mycan: Tcanvas;
23 | R: TRect;
24 | DrawPos: TPoint;
25 | MyCursor: TIcon;
26 | hld: hwnd;
27 | Threadld: dword;
28 | mp: TPoint;
29 | pIconInfo: TIconInfo;
30 | begin
31 | Mybmp := Tbitmap.Create;
32 | Mycan := Tcanvas.Create;
33 | dc := GetWindowDC(0);
34 | try
35 | Mycan.Handle := dc;
36 | R := Rect(0, 0, GetSystemMetrics(SM_CXSCREEN),
37 | GetSystemMetrics(SM_CYSCREEN));
38 | Mybmp.Width := R.Right;
39 | Mybmp.Height := R.Bottom;
40 | Mybmp.Canvas.CopyRect(R, Mycan, R);
41 | finally
42 | releaseDC(0, dc);
43 | end;
44 | Mycan.Handle := 0;
45 | Mycan.Free;
46 |
47 | if DrawCur then
48 | begin
49 | GetCursorPos(DrawPos);
50 | MyCursor := TIcon.Create;
51 | GetCursorPos(mp);
52 | hld := WindowFromPoint(mp);
53 | Threadld := GetWindowThreadProcessId(hld, nil);
54 | AttachThreadInput(GetCurrentThreadId, Threadld, True);
55 | MyCursor.Handle := Getcursor();
56 | AttachThreadInput(GetCurrentThreadId, Threadld, False);
57 | GetIconInfo(MyCursor.Handle, pIconInfo);
58 | Cursorx := DrawPos.x - round(pIconInfo.xHotspot);
59 | Cursory := DrawPos.y - round(pIconInfo.yHotspot);
60 | Mybmp.Canvas.Draw(Cursorx, Cursory, MyCursor);
61 | DeleteObject(pIconInfo.hbmColor);
62 | DeleteObject(pIconInfo.hbmMask);
63 | MyCursor.ReleaseHandle;
64 | MyCursor.Free;
65 | end;
66 | Mybmp.PixelFormat := pf8bit;
67 | Mybmp.SaveToStream(StreamName);
68 | Mybmp.Free;
69 | end;
70 |
71 | // Compara as Streams e as Separam quando os Pixels da Bitmap forem iguais.
72 | procedure CompareStream(MyFirstStream, MySecondStream, MyCompareStream
73 | : TMemoryStream);
74 | var
75 | I: integer;
76 | P1, P2, P3: ^AnsiChar;
77 | begin
78 | MySecondStream.Clear;
79 | MyCompareStream.Clear;
80 | GetScreenToBmp(True, MySecondStream);
81 |
82 | P1 := MyFirstStream.Memory;
83 | P2 := MySecondStream.Memory;
84 | MyCompareStream.SetSize(MyFirstStream.Size);
85 | P3 := MyCompareStream.Memory;
86 |
87 | for I := 0 to MyFirstStream.Size - 1 do
88 | begin
89 | if P1^ = P2^ then
90 | P3^ := '0'
91 | else
92 | P3^ := P2^;
93 | Inc(P1);
94 | Inc(P2);
95 | Inc(P3);
96 | end;
97 |
98 | MyFirstStream.Clear;
99 | MyFirstStream.CopyFrom(MySecondStream, 0);
100 | end;
101 |
102 | // Modifica as Streams para reajustar os Pixels da Bitmap
103 | procedure ResumeStream(MyFirstStream, MySecondStream, MyCompareStream
104 | : TMemoryStream);
105 | var
106 | I: integer;
107 | P1, P2, P3: ^AnsiChar;
108 | begin
109 | P1 := MyFirstStream.Memory;
110 | MySecondStream.SetSize(MyFirstStream.Size);
111 | P2 := MySecondStream.Memory;
112 | P3 := MyCompareStream.Memory;
113 |
114 | for I := 0 to MyFirstStream.Size - 1 do
115 | begin
116 | if P3^ = '0' then
117 | P2^ := P1^
118 | else
119 | P2^ := P3^;
120 | Inc(P1);
121 | Inc(P2);
122 | Inc(P3);
123 | end;
124 |
125 | MyFirstStream.Clear;
126 | MyFirstStream.CopyFrom(MySecondStream, 0);
127 | MySecondStream.Position := 0;
128 | end;
129 |
130 | end.
131 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/UAC.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/UAC.RES
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/UAC.manifest:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/UAC.rc:
--------------------------------------------------------------------------------
1 | 1 24 "UAC.manifest"
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/zlib/adler32.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/zlib/adler32.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/zlib/deflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/zlib/deflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/zlib/infblock.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/zlib/infblock.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/zlib/infcodes.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/zlib/infcodes.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/zlib/inffast.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/zlib/inffast.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/zlib/inflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/zlib/inflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/zlib/inftrees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/zlib/inftrees.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/zlib/infutil.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/zlib/infutil.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Cliente/zlib/trees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Cliente/zlib/trees.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Icones/Deleket-Sleek-Xp-Basic-Document-Blank.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Icones/Deleket-Sleek-Xp-Basic-Document-Blank.ico
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Icones/Deleket-Sleek-Xp-Basic-Folder-Open.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Icones/Deleket-Sleek-Xp-Basic-Folder-Open.ico
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Icones/Desktop (1).ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Icones/Desktop (1).ico
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Icones/Desktop.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Icones/Desktop.ico
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Icones/folder_blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Icones/folder_blue.png
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Icones/icone.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Icones/icone.bmp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Icones/icone2.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Icones/icone2.bmp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Projeto_Access_PC.groupproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | {27A03785-5822-4E03-A03F-0BD60469294E}
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | Default.Personality.12
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Access_PC.cfg:
--------------------------------------------------------------------------------
1 | -$A8
2 | -$B-
3 | -$C+
4 | -$D+
5 | -$E-
6 | -$F-
7 | -$G+
8 | -$H+
9 | -$I+
10 | -$J-
11 | -$K-
12 | -$L+
13 | -$M-
14 | -$N+
15 | -$O+
16 | -$P+
17 | -$Q-
18 | -$R-
19 | -$S-
20 | -$T-
21 | -$U-
22 | -$V+
23 | -$W-
24 | -$X+
25 | -$YD
26 | -$Z1
27 | -cg
28 | -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
29 | -H+
30 | -W+
31 | -M
32 | -$M16384,1048576
33 | -K$00400000
34 | -E"..\Bin\"
35 | -LE"c:\program files (x86)\borland\delphi7\Projects\Bpl"
36 | -LN"c:\program files (x86)\borland\delphi7\Projects\Bpl"
37 | -w-UNSAFE_TYPE
38 | -w-UNSAFE_CODE
39 | -w-UNSAFE_CAST
40 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Access_PC.dof:
--------------------------------------------------------------------------------
1 | [FileVersion]
2 | Version=7.0
3 | [Compiler]
4 | A=8
5 | B=0
6 | C=1
7 | D=1
8 | E=0
9 | F=0
10 | G=1
11 | H=1
12 | I=1
13 | J=0
14 | K=0
15 | L=1
16 | M=0
17 | N=1
18 | O=1
19 | P=1
20 | Q=0
21 | R=0
22 | S=0
23 | T=0
24 | U=0
25 | V=1
26 | W=0
27 | X=1
28 | Y=1
29 | Z=1
30 | ShowHints=1
31 | ShowWarnings=1
32 | UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
33 | NamespacePrefix=
34 | SymbolDeprecated=1
35 | SymbolLibrary=1
36 | SymbolPlatform=1
37 | UnitLibrary=1
38 | UnitPlatform=1
39 | UnitDeprecated=1
40 | HResultCompat=1
41 | HidingMember=1
42 | HiddenVirtual=1
43 | Garbage=1
44 | BoundsError=1
45 | ZeroNilCompat=1
46 | StringConstTruncated=1
47 | ForLoopVarVarPar=1
48 | TypedConstVarPar=1
49 | AsgToTypedConst=1
50 | CaseLabelRange=1
51 | ForVariable=1
52 | ConstructingAbstract=1
53 | ComparisonFalse=1
54 | ComparisonTrue=1
55 | ComparingSignedUnsigned=1
56 | CombiningSignedUnsigned=1
57 | UnsupportedConstruct=1
58 | FileOpen=1
59 | FileOpenUnitSrc=1
60 | BadGlobalSymbol=1
61 | DuplicateConstructorDestructor=1
62 | InvalidDirective=1
63 | PackageNoLink=1
64 | PackageThreadVar=1
65 | ImplicitImport=1
66 | HPPEMITIgnored=1
67 | NoRetVal=1
68 | UseBeforeDef=1
69 | ForLoopVarUndef=1
70 | UnitNameMismatch=1
71 | NoCFGFileFound=1
72 | MessageDirective=1
73 | ImplicitVariants=1
74 | UnicodeToLocale=1
75 | LocaleToUnicode=1
76 | ImagebaseMultiple=1
77 | SuspiciousTypecast=1
78 | PrivatePropAccessor=1
79 | UnsafeType=0
80 | UnsafeCode=0
81 | UnsafeCast=0
82 | [Linker]
83 | MapFile=0
84 | OutputObjs=0
85 | ConsoleApp=1
86 | DebugInfo=0
87 | RemoteSymbols=0
88 | MinStackSize=16384
89 | MaxStackSize=1048576
90 | ImageBase=4194304
91 | ExeDescription=
92 | [Directories]
93 | OutputDir=..\Bin\
94 | UnitOutputDir=
95 | PackageDLLOutputDir=
96 | PackageDCPOutputDir=
97 | SearchPath=
98 | Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;dclOfficeXP;CoolTrayIcon_D6plus
99 | Conditionals=
100 | DebugSourceDirs=
101 | UsePackages=0
102 | [Parameters]
103 | RunParams=
104 | HostApplication=
105 | Launcher=
106 | UseLauncher=0
107 | DebugCWD=
108 | [Language]
109 | ActiveLang=
110 | ProjectLang=
111 | RootDir=
112 | [Version Info]
113 | IncludeVerInfo=1
114 | AutoIncBuild=0
115 | MajorVer=1
116 | MinorVer=1
117 | Release=4
118 | Build=49
119 | Debug=0
120 | PreRelease=0
121 | Special=0
122 | Private=0
123 | DLL=0
124 | Locale=1046
125 | CodePage=1252
126 | [Version Info Keys]
127 | CompanyName=Deploy Team
128 | FileDescription=Acesso Remoto
129 | FileVersion=1.1.4.49
130 | InternalName=Access PC
131 | LegalCopyright=Deploy Team
132 | LegalTrademarks=Deploy Team
133 | OriginalFilename=Access PC
134 | ProductName=Access PC
135 | ProductVersion=1.0.0.0
136 | Comments=Acesso Remoto
137 | [HistoryLists\hlUnitAliases]
138 | Count=1
139 | Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
140 | [HistoryLists\hlOutputDirectorry]
141 | Count=1
142 | Item0=..\Bin\
143 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Access_PC.dpr:
--------------------------------------------------------------------------------
1 | program Access_PC;
2 |
3 | uses
4 | Forms,
5 | Principal in 'Principal.pas' {Form1},
6 | Desktop_Remoto in 'Desktop_Remoto.pas' {Form2},
7 | File_Manager in 'File_Manager.pas' {Form3},
8 | Chat in 'Chat.pas' {Form4};
9 |
10 | {$R *.res}
11 |
12 | begin
13 | Application.Initialize;
14 | Application.Title := 'Access PC [ Servidor ]';
15 | Application.CreateForm(TForm1, Form1);
16 | Application.CreateForm(TForm2, Form2);
17 | Application.CreateForm(TForm3, Form3);
18 | Application.CreateForm(TForm4, Form4);
19 | Application.Run;
20 | end.
21 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Access_PC.dproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | {EEEFD055-EDBB-4D6E-95C9-17FBCB46DB59}
4 | Access_PC.dpr
5 | True
6 | Release
7 | 1
8 | Application
9 | VCL
10 | 15.4
11 | Win32
12 |
13 |
14 | true
15 |
16 |
17 | true
18 | Base
19 | true
20 |
21 |
22 | true
23 | Base
24 | true
25 |
26 |
27 | true
28 | Base
29 | true
30 |
31 |
32 | true
33 | Cfg_1
34 | true
35 | true
36 |
37 |
38 | true
39 | Base
40 | true
41 |
42 |
43 | true
44 | Cfg_2
45 | true
46 | true
47 |
48 |
49 | Access_PC
50 | true
51 | 1
52 | 4
53 | vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;dclOfficeXP;CoolTrayIcon_D6plus;$(DCC_UsePackage)
54 | 1046
55 | true
56 | 1
57 | false
58 | 00400000
59 | 49
60 | true
61 | ..\Bin\
62 | false
63 | false
64 | Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;System.Win;$(DCC_Namespace)
65 | CompanyName=Deploy Team;FileDescription=Acesso Remoto;FileVersion=1.1.4.49;InternalName=Access PC;LegalCopyright=Deploy Team;LegalTrademarks=Deploy Team;OriginalFilename=Access PC;ProductName=Access PC;ProductVersion=1.0.0.0;Comments=Acesso Remoto
66 | false
67 |
68 |
69 | $(BDS)\bin\default_app.manifest
70 | true
71 | 1033
72 | CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
73 | Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
74 | Access_PC_Icon.ico
75 |
76 |
77 | Access_PC_Icon.ico
78 |
79 |
80 | 0
81 | 0
82 | false
83 | RELEASE;$(DCC_Define)
84 |
85 |
86 | 0
87 | 0
88 | UAC.manifest
89 | 1033
90 | CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
91 | 0
92 |
93 |
94 | DEBUG;$(DCC_Define)
95 | true
96 | false
97 |
98 |
99 | UAC.manifest
100 | 0
101 | 0
102 | 1033
103 | 0
104 | CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
105 |
106 |
107 |
108 | MainSource
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 | Cfg_2
124 | Base
125 |
126 |
127 | Base
128 |
129 |
130 | Cfg_1
131 | Base
132 |
133 |
134 |
135 | Delphi.Personality.12
136 |
137 |
138 |
139 |
140 | Access_PC.dpr
141 |
142 |
143 | True
144 | False
145 | 1
146 | 1
147 | 4
148 | 49
149 | False
150 | False
151 | False
152 | False
153 | False
154 | 1046
155 | 1252
156 |
157 |
158 | Deploy Team
159 | Acesso Remoto
160 | 1.1.4.49
161 | Access PC
162 | Deploy Team
163 | Deploy Team
164 | Access PC
165 | Access PC
166 | 1.0.0.0
167 | Acesso Remoto
168 |
169 |
170 | Embarcadero C++Builder Office 2000 Servers Package
171 | Embarcadero C++Builder Office XP Servers Package
172 | Microsoft Office 2000 Sample Automation Server Wrapper Components
173 | Microsoft Office XP Sample Automation Server Wrapper Components
174 |
175 |
176 |
177 | True
178 | False
179 |
180 |
181 | 12
182 |
183 |
184 |
185 |
186 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Access_PC.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/Access_PC.res
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Access_PC_Icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/Access_PC_Icon.ico
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Chat.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/Chat.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Chat.dfm:
--------------------------------------------------------------------------------
1 | object Form4: TForm4
2 | Left = 200
3 | Top = 149
4 | Width = 683
5 | Height = 359
6 | Caption = 'Chat'
7 | Color = clBtnFace
8 | Font.Charset = DEFAULT_CHARSET
9 | Font.Color = clWindowText
10 | Font.Height = -11
11 | Font.Name = 'MS Sans Serif'
12 | Font.Style = []
13 | OldCreateOrder = False
14 | Position = poDesktopCenter
15 | OnClose = FormClose
16 | PixelsPerInch = 96
17 | TextHeight = 13
18 | object Memo1: TMemo
19 | Left = 0
20 | Top = 240
21 | Width = 667
22 | Height = 81
23 | Align = alBottom
24 | ScrollBars = ssVertical
25 | TabOrder = 0
26 | OnKeyDown = Memo1KeyDown
27 | OnKeyUp = Memo1KeyUp
28 | end
29 | object Memo2: TMemo
30 | Left = 0
31 | Top = 0
32 | Width = 667
33 | Height = 240
34 | Align = alClient
35 | ReadOnly = True
36 | ScrollBars = ssVertical
37 | TabOrder = 1
38 | end
39 | end
40 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Chat.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/Chat.pas
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Desktop_Remoto.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/Desktop_Remoto.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Desktop_Remoto.dfm:
--------------------------------------------------------------------------------
1 | object Form2: TForm2
2 | Left = 237
3 | Top = 129
4 | Caption = 'Access PC - Desktop Remoto de "fulano"'
5 | ClientHeight = 390
6 | ClientWidth = 696
7 | Color = clBtnFace
8 | Font.Charset = DEFAULT_CHARSET
9 | Font.Color = clWindowText
10 | Font.Height = -11
11 | Font.Name = 'MS Sans Serif'
12 | Font.Style = []
13 | OldCreateOrder = False
14 | Position = poDesktopCenter
15 | OnClose = FormClose
16 | OnResize = FormResize
17 | PixelsPerInch = 96
18 | TextHeight = 13
19 | object Panel1: TPanel
20 | Left = 0
21 | Top = 357
22 | Width = 696
23 | Height = 33
24 | Align = alBottom
25 | TabOrder = 0
26 | object CheckBox1: TCheckBox
27 | Left = 8
28 | Top = 8
29 | Width = 97
30 | Height = 17
31 | TabStop = False
32 | Caption = 'Mouse Remoto'
33 | TabOrder = 0
34 | OnKeyDown = CheckBox1KeyDown
35 | end
36 | object CheckBox2: TCheckBox
37 | Left = 120
38 | Top = 8
39 | Width = 105
40 | Height = 17
41 | TabStop = False
42 | Caption = 'Teclado Remoto'
43 | TabOrder = 1
44 | OnClick = CheckBox2Click
45 | OnKeyDown = CheckBox2KeyDown
46 | end
47 | object CheckBox3: TCheckBox
48 | Left = 232
49 | Top = 8
50 | Width = 137
51 | Height = 17
52 | TabStop = False
53 | Caption = 'Redimensionar Imagem'
54 | TabOrder = 2
55 | OnClick = CheckBox3Click
56 | OnKeyDown = CheckBox3KeyDown
57 | end
58 | end
59 | object ScrollBox1: TScrollBox
60 | Left = 0
61 | Top = 0
62 | Width = 696
63 | Height = 357
64 | HorzScrollBar.Smooth = True
65 | HorzScrollBar.Tracking = True
66 | VertScrollBar.Smooth = True
67 | VertScrollBar.Tracking = True
68 | Align = alClient
69 | TabOrder = 1
70 | object Image1: TImage
71 | Left = 0
72 | Top = 0
73 | Width = 233
74 | Height = 161
75 | AutoSize = True
76 | OnDblClick = Image1DblClick
77 | OnMouseDown = Image1MouseDown
78 | OnMouseMove = Image1MouseMove
79 | OnMouseUp = Image1MouseUp
80 | end
81 | end
82 | object Timer1: TTimer
83 | Interval = 1
84 | OnTimer = Timer1Timer
85 | Left = 136
86 | Top = 16
87 | end
88 | end
89 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Desktop_Remoto.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/Desktop_Remoto.pas
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/File_Manager.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/File_Manager.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/File_Manager.dfm:
--------------------------------------------------------------------------------
1 | object Form3: TForm3
2 | Left = 310
3 | Top = 163
4 | Caption = 'Access PC - Compartilhador de Arquivos de "Fulano"'
5 | ClientHeight = 403
6 | ClientWidth = 622
7 | Color = clBtnFace
8 | Font.Charset = DEFAULT_CHARSET
9 | Font.Color = clWindowText
10 | Font.Height = -11
11 | Font.Name = 'MS Sans Serif'
12 | Font.Style = []
13 | OldCreateOrder = False
14 | Position = poDesktopCenter
15 | OnClose = FormClose
16 | OnCreate = FormCreate
17 | PixelsPerInch = 96
18 | TextHeight = 13
19 | object ListView1: TListView
20 | Left = 8
21 | Top = 32
22 | Width = 601
23 | Height = 193
24 | Columns = <
25 | item
26 | Caption = 'Pasta / Arquivo'
27 | Width = 470
28 | end
29 | item
30 | Caption = 'Tipo'
31 | Width = 100
32 | end>
33 | GridLines = True
34 | LargeImages = ImageList1
35 | ReadOnly = True
36 | RowSelect = True
37 | PopupMenu = PopupMenu1
38 | SmallImages = ImageList1
39 | StateImages = ImageList1
40 | TabOrder = 0
41 | ViewStyle = vsReport
42 | OnDblClick = ListView1DblClick
43 | end
44 | object Edit1: TEdit
45 | Left = 0
46 | Top = 0
47 | Width = 617
48 | Height = 21
49 | TabOrder = 1
50 | Text = 'C:\'
51 | OnKeyDown = Edit1KeyDown
52 | end
53 | object Panel1: TPanel
54 | Left = 0
55 | Top = 340
56 | Width = 622
57 | Height = 63
58 | Align = alBottom
59 | TabOrder = 2
60 | DesignSize = (
61 | 622
62 | 63)
63 | object Label1: TLabel
64 | Left = 8
65 | Top = 8
66 | Width = 116
67 | Height = 13
68 | Caption = 'Progresso de Download:'
69 | end
70 | object Label2: TLabel
71 | Left = 8
72 | Top = 32
73 | Width = 102
74 | Height = 13
75 | Caption = 'Progresso de Upload:'
76 | end
77 | object ProgressBar1: TProgressBar
78 | Left = 128
79 | Top = 8
80 | Width = 482
81 | Height = 17
82 | Anchors = [akLeft, akRight, akBottom]
83 | TabOrder = 0
84 | end
85 | object ProgressBar2: TProgressBar
86 | Left = 128
87 | Top = 32
88 | Width = 482
89 | Height = 17
90 | Anchors = [akLeft, akRight, akBottom]
91 | TabOrder = 1
92 | end
93 | end
94 | object ImageList1: TImageList
95 | Left = 176
96 | Top = 144
97 | Bitmap = {
98 | 494C010102000400080010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
99 | 0000000000003600000028000000400000001000000001002000000000000010
100 | 0000000000000000000000000000000000000000000000000000000000000000
101 | 0000D8E8EE00FCFCFC000000000000000000FCFCFC00C5C5C500000000000000
102 | 0000000000000000000000000000000000000000000000000000000000000000
103 | 0000000000000000000000000000000000000000000000000000000000000000
104 | 0000000000000000000000000000000000000000000000000000000000000000
105 | 0000000000000000000000000000000000000000000000000000000000000000
106 | 0000000000000000000000000000000000000000000000000000000000000000
107 | 0000000000000000000000000000000000000000000000000000000000000000
108 | 0000000000000000000000000000000000000000000000000000000000000000
109 | 000070BAD800B0B0B000D5D5D500E2E2E200E8E7E80078929D005A97B0006CB3
110 | D000D2D2D200FBFBFB0000000000000000000000000000000000000000000000
111 | 0000000000000000000000000000000000000000000000000000000000000000
112 | 0000000000000000000000000000000000000000000000000000000000000000
113 | 0000000000000000000000000000000000000000000000000000000000000000
114 | 0000000000000000000000000000000000000000000000000000000000000000
115 | 0000000000000000000000000000000000000000000000000000000000000000
116 | 00000000000000000000000000000000000000000000000000000000000074BF
117 | DE0073BEDE0084848400C7C7C800E3E3E300ECECEC006F98AA005C99B20071B9
118 | D600D1D1D100DFDFDF0000000000000000000000000000000000000000000000
119 | 0000000000000000000000000000000000000000000000000000000000000000
120 | 0000000000000000000000000000000000000000000000000000000000000000
121 | 0000000000000000000000000000000000000000000000000000000000000000
122 | 0000000000000000000000000000000000000000000000000000000000000000
123 | 0000000000000000000000000000000000000000000000000000000000000000
124 | 0000000000000000000000000000000000000000000000000000DBEDF50077C3
125 | E30077C3E30088888900C7C7C800E4E4E400E8E8E800729CAF005F9DB80073BD
126 | DD00D3D3D300E6E6E600F4F4F4000000000000000000BFBDBB00BFBDBB00BFBD
127 | BB00A6AEB000BDBBB900BFBDBB00BFBDBB00BDBBB9009A989600BFBDBB00BFBD
128 | BB00BFBDBB00BFBDBB00BFBDBB00CCCCCB000000000000000000000000000000
129 | 0000000000000000000000000000000000000000000000000000000000000000
130 | 0000000000000000000000000000000000000000000000000000000000000000
131 | 0000000000000000000000000000000000000000000000000000000000000000
132 | 0000000000000000000000000000000000000000000000000000DDF0F8007CCB
133 | ED007CCBEC008C8C8C00CBCCCD00D6D6D700E8E8E80077A2B30063A2BC0078C3
134 | E300F4F4F400FDFDFD000000000000000000CFC8C300E0DCD900DCD7D500DBD7
135 | D400DEDAD700DAD6D300DAD6D300E6E5E400E6E5E400EBEBEB00ECECEC00EDED
136 | ED00F2F2F200F1F1F100EFEFEF00BDBAB8000000000000000000000000000000
137 | 0000000000000000000000000000000000000000000000000000000000000000
138 | 0000000000000000000000000000000000000000000000000000000000000000
139 | 0000000000000000000000000000000000000000000000000000000000000000
140 | 0000000000000000000000000000000000000000000000000000DEF1F90080CF
141 | F20080CFF100799AA9009B9B9C00E1E0E100EBECEB007AA5B70065A6C0007AC8
142 | E80000000000000000000000000000000000CFC8C300CBA88E00BB846000BA83
143 | 5D00BA815900B97F5700B97E5400B87C5100C2A08900E3E3E300E4E4E400E5E5
144 | E500EEEEEE00ECECEC00EAEAEA00BDBAB8000000000000000000000000000000
145 | 0000000000000000000000000000000000000000000000000000000000000000
146 | 0000000000000000000000000000000000000000000000000000000000000000
147 | 0000000000000000000000000000000000000000000000000000000000000000
148 | 0000000000000000000000000000000000000000000000000000DFF2FB0083D5
149 | F70082D4F6007BC3E00098989900D9D9D900E4E4E3007DA8BB0069A9C4007FCD
150 | ED0000000000000000000000000000000000CFC8C300D1B29600C08D6600BF8A
151 | 6300BE885E00BE875C00BD855900BD845700C7A89000E9E9E900E7E7E700E7E7
152 | E700EBEBEB00E9E9E900E7E7E700BCB9B7000000000000000000000000000000
153 | 0000000000000000000000000000000000000000000000000000000000000000
154 | 0000000000000000000000000000000000000000000000000000000000000000
155 | 0000000000000000000000000000000000000000000000000000000000000000
156 | 0000000000000000000000000000000000000000000000000000E0F4FC0087DB
157 | FD0086D9FB0080C8E5008C8C8D00DBDBDC00ECECEC0080ABBE006AACC80081D0
158 | F30000000000000000000000000000000000CDC7C100D9BB9C00C9996C00C999
159 | 6C00C9986B00C9986A00C9976800C9966600D1B59B00EEEEEE00EDEDED00EBEB
160 | EB00EEEEEE00EBEBEB00E9E9E900B9B7B5000000000000000000000000000000
161 | 0000000000000000000000000000000000000000000000000000000000000000
162 | 0000000000000000000000000000000000000000000000000000000000000000
163 | 0000000000000000000000000000000000000000000000000000000000000000
164 | 0000000000000000000000000000000000000000000000000000E0F4FD0089DC
165 | FE0088DCFE0082CAE7009B9C9C00CFCFD000E3E3E20081ACC0006DAFCB0084D4
166 | F60000000000000000000000000000000000CAC3BF00DEC29F00D1A37100D1A3
167 | 7100D1A37100D1A37100D1A27000D1A26F00D7BFA300F4F4F400F3F3F300F2F2
168 | F200EDEAEA00BF8D6C00E2E2E200B9B7B5000000000000000000000000000000
169 | 0000000000000000000000000000000000000000000000000000000000000000
170 | 0000000000000000000000000000000000000000000000000000000000000000
171 | 0000000000000000000000000000000000000000000000000000000000000000
172 | 0000000000000000000000000000000000000000000000000000E1F5FD008CE1
173 | FE008BE0FE0084CCE7008A8B8B00E4E4E500FAFAFA0084AFC2006EB1CD0087D8
174 | FB0000000000000000000000000000000000CAC3BF00E4C9A300D9AC7500D8AD
175 | 7600D9AD7600D9AD7700D9AD7600D8AD7600DDC7A900F4F4F400F4F4F400F2F2
176 | F200F1EEEE00C7966D00E6E6E600B8B6B4000000000000000000000000000000
177 | 0000000000000000000000000000000000000000000000000000000000000000
178 | 0000000000000000000000000000000000000000000000000000000000000000
179 | 0000000000000000000000000000000000000000000000000000000000000000
180 | 0000000000000000000000000000000000000000000000000000E2F6FD0090E5
181 | FE008FE3FE0086CEE700AEAEAF00FFFFFF00FFFFFF0086B1C4006FB1CE0087D8
182 | FB0000000000000000000000000000000000C9C2BF00EEDDBF00E7C89900E0B6
183 | 7A00E0B67B00DFB67B00DFB67B00DFB67B00E2CDAE00F3F3F300F2F2F200F2F2
184 | F200F4F1F100D3A77500EAEAEA00B8B6B4000000000000000000000000000000
185 | 0000000000000000000000000000000000000000000000000000000000000000
186 | 0000000000000000000000000000000000000000000000000000000000000000
187 | 0000000000000000000000000000000000000000000000000000000000000000
188 | 0000000000000000000000000000000000000000000000000000E2F8FD0092EA
189 | FE0091E8FE0088D1E800B0B0B000FDFDFD00F7F7F70087B2C5006FB2CF0087D8
190 | FB0000000000000000000000000000000000CAC4C100F0E0C400EED5AD00EBCF
191 | A200E4BD8000E3BB7D00E3BB7D00E2BB7D00E4D0AF00F7F7F700F6F6F600F6F6
192 | F600F6F3F200D9AE7700EBEBEB00B7B5B4000000000000000000000000000000
193 | 0000000000000000000000000000000000000000000000000000000000000000
194 | 0000000000000000000000000000000000000000000000000000000000000000
195 | 0000000000000000000000000000000000000000000000000000000000000000
196 | 0000000000000000000000000000000000000000000000000000E4F9FE0097EF
197 | FE0095EBFE009EE0F300FFFFFF00FEFEFE00F8FCFE0096DCFB0087D8FB0087D8
198 | FB0000000000000000000000000000000000D1CECD00F5E8CD00F5E1BC00F3DD
199 | B400F0D6A800EED29F00EDCD9600EBCA8F00E8D6B600F4F4F400F4F4F400F4F4
200 | F400F7F4F400E6BD7A00EDEDED00AEAEAE000000000000000000000000000000
201 | 0000000000000000000000000000000000000000000000000000000000000000
202 | 0000000000000000000000000000000000000000000000000000000000000000
203 | 0000000000000000000000000000000000000000000000000000000000000000
204 | 0000000000000000000000000000000000000000000000000000E4FAFE0099F3
205 | FE00E3F4FB00ADE4FC0087D8FB0090DBFB0091DCFB00A5E3FC00C2EBFD00E4F4
206 | FC0000000000000000000000000000000000D0CCCA00F7EDD600FBECCB00F9E7
207 | C000F6DEAF00F4DAA500F1D49B00F0D19300EAD9B800F5F5F500F5F5F500F5F5
208 | F500F8F5F500F4D18500EEEEEE00B1B0B0000000000000000000000000000000
209 | 0000000000000000000000000000000000000000000000000000000000000000
210 | 0000000000000000000000000000000000000000000000000000000000000000
211 | 0000000000000000000000000000000000000000000000000000000000000000
212 | 0000000000000000000000000000000000000000000000000000F4FBFD00DCF4
213 | FB00000000000000000000000000000000000000000000000000000000000000
214 | 000000000000000000000000000000000000CFCCC900FAF8F700F8F5F400F8F5
215 | F400F8F5F400F9F5F400F9F5F400F9F6F400FBF9F900FFFFFF00FFFFFF00FFFF
216 | FF00FEFEFE00F8F5F500FCFCFC00B1B1B0000000000000000000000000000000
217 | 0000000000000000000000000000000000000000000000000000000000000000
218 | 0000000000000000000000000000000000000000000000000000000000000000
219 | 0000000000000000000000000000000000000000000000000000000000000000
220 | 0000000000000000000000000000000000000000000000000000000000000000
221 | 0000000000000000000000000000000000000000000000000000000000000000
222 | 000000000000000000000000000000000000DEDDDC00F7F6F500F1F1F000E3EA
223 | EA00D4E0E000CED7D700E1DBD500DFD8D200DDD6D100C0CCD000BECDD100C3D0
224 | D500D9D1CE00DCD3D100D6CECC00BCBCBB000000000000000000000000000000
225 | 0000000000000000000000000000000000000000000000000000000000000000
226 | 0000000000000000000000000000000000000000000000000000000000000000
227 | 0000000000000000000000000000000000000000000000000000000000000000
228 | 000000000000000000000000000000000000424D3E000000000000003E000000
229 | 2800000040000000100000000100010000000000800000000000000000000000
230 | 000000000000000000000000FFFFFF00F33FFFFF00000000F003FFFF00000000
231 | E003FFFF00000000C001800000000000C003000000000000C00F000000000000
232 | C00F000000000000C00F000000000000C00F000000000000C00F000000000000
233 | C00F000000000000C00F000000000000C00F000000000000C00F000000000000
234 | CFFF000000000000FFFF00000000000000000000000000000000000000000000
235 | 000000000000}
236 | end
237 | object PopupMenu1: TPopupMenu
238 | OnPopup = PopupMenu1Popup
239 | Left = 328
240 | Top = 160
241 | object Atualizar1: TMenuItem
242 | Caption = 'Atualizar'
243 | OnClick = Atualizar1Click
244 | end
245 | object N1: TMenuItem
246 | Caption = '-'
247 | end
248 | object BaixarArquivo1: TMenuItem
249 | Caption = 'Baixar Arquivo'
250 | OnClick = BaixarArquivo1Click
251 | end
252 | object EnviarArquivo1: TMenuItem
253 | Caption = 'Enviar Arquivo'
254 | OnClick = EnviarArquivo1Click
255 | end
256 | end
257 | object SaveDialog1: TSaveDialog
258 | Filter = 'Arquivo|*.*'
259 | Left = 312
260 | Top = 120
261 | end
262 | object OpenDialog1: TOpenDialog
263 | Filter = 'Todos os Arquivos|*.*'
264 | Left = 344
265 | Top = 120
266 | end
267 | object Timer1: TTimer
268 | Enabled = False
269 | Interval = 200
270 | OnTimer = Timer1Timer
271 | Left = 480
272 | Top = 184
273 | end
274 | end
275 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/File_Manager.pas:
--------------------------------------------------------------------------------
1 | unit File_Manager;
2 |
3 | interface
4 |
5 | uses
6 | Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
7 | Dialogs, StdCtrls, ComCtrls, ImgList, Menus, ScktComp, ExtCtrls;
8 |
9 | type
10 | TForm3 = class(TForm)
11 | ListView1: TListView;
12 | Edit1: TEdit;
13 | ImageList1: TImageList;
14 | PopupMenu1: TPopupMenu;
15 | BaixarArquivo1: TMenuItem;
16 | EnviarArquivo1: TMenuItem;
17 | SaveDialog1: TSaveDialog;
18 | OpenDialog1: TOpenDialog;
19 | Panel1: TPanel;
20 | Label1: TLabel;
21 | ProgressBar1: TProgressBar;
22 | ProgressBar2: TProgressBar;
23 | Label2: TLabel;
24 | Timer1: TTimer;
25 | Atualizar1: TMenuItem;
26 | N1: TMenuItem;
27 | procedure FormCreate(Sender: TObject);
28 | procedure PopupMenu1Popup(Sender: TObject);
29 | procedure Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
30 | procedure ListView1DblClick(Sender: TObject);
31 | procedure BaixarArquivo1Click(Sender: TObject);
32 | procedure EnviarArquivo1Click(Sender: TObject);
33 | procedure Timer1Timer(Sender: TObject);
34 | procedure Atualizar1Click(Sender: TObject);
35 | procedure FormClose(Sender: TObject; var Action: TCloseAction);
36 | private
37 | { Private declarations }
38 | public
39 | Socket: TCustomWinSocket;
40 | LocalSalvar: String;
41 | ArquivoEnviar: TMemoryStream;
42 | { Public declarations }
43 | end;
44 |
45 | var
46 | Form3: TForm3;
47 |
48 | implementation
49 |
50 | uses Principal;
51 |
52 | {$R *.dfm}
53 |
54 | procedure TForm3.FormCreate(Sender: TObject);
55 | begin
56 | Edit1.Align := alTop;
57 | ListView1.Align := alClient;
58 | end;
59 |
60 | procedure TForm3.PopupMenu1Popup(Sender: TObject);
61 | begin
62 | if ListView1.ItemIndex < 0 then
63 | begin
64 | PopupMenu1.Items[2].Enabled := false;
65 | exit;
66 | end;
67 |
68 | if ListView1.Selected.SubItems[0] = 'Arquivo' then
69 | PopupMenu1.Items[2].Enabled := true
70 | else
71 | PopupMenu1.Items[2].Enabled := false;
72 | end;
73 |
74 | procedure TForm3.Edit1KeyDown(Sender: TObject; var Key: Word;
75 | Shift: TShiftState);
76 | begin
77 |
78 | try
79 | if Key = VK_RETURN then
80 | begin
81 | Socket.SendText('<|Folder|>' + Edit1.Text + '<<|');
82 | end
83 | except
84 | exit;
85 | end;
86 | end;
87 |
88 | procedure TForm3.ListView1DblClick(Sender: TObject);
89 | begin
90 | if ListView1.Selected.SubItems[0] = 'Arquivo' then
91 | exit;
92 |
93 | if ListView1.Selected.Caption = '..' then
94 | begin
95 | Edit1.Text := ExtractFilePath(Copy(Edit1.Text, 1, Length(Edit1.Text) - 1));
96 | Socket.SendText('<|Folder|>' + Edit1.Text + '<<|')
97 | end
98 | else
99 | begin
100 | if Copy(Edit1.Text, Length(Edit1.Text), Length(Edit1.Text)) = '\' then
101 | else
102 | Edit1.Text := Edit1.Text + '\';
103 |
104 | Edit1.Text := Edit1.Text + ListView1.Selected.Caption + '\';
105 | Socket.SendText('<|Folder|>' + Edit1.Text + '<<|');
106 | end;
107 |
108 | end;
109 |
110 | procedure TForm3.BaixarArquivo1Click(Sender: TObject);
111 | begin
112 | SaveDialog1.Filter := 'Arquivo ' + ExtractFileExt(ListView1.Selected.Caption)
113 | + '|*' + ExtractFileExt(ListView1.Selected.Caption);
114 | if SaveDialog1.Execute then
115 | begin
116 | LocalSalvar := SaveDialog1.FileName +
117 | ExtractFileExt(ListView1.Selected.Caption);
118 | Socket.SendText('<|DownloadFile|>' + Edit1.Text + '\' +
119 | ListView1.Selected.Caption + '<<|');
120 | end;
121 | end;
122 |
123 | procedure TForm3.EnviarArquivo1Click(Sender: TObject);
124 | begin
125 | if Copy(Edit1.Text, Length(Edit1.Text), Length(Edit1.Text)) = '\' then
126 | else
127 | Edit1.Text := Edit1.Text + '\';
128 |
129 | if OpenDialog1.Execute then
130 | begin
131 | ArquivoEnviar := TMemoryStream.Create;
132 | ArquivoEnviar.LoadFromFile(OpenDialog1.FileName);
133 | Socket.SendText('<|UploadFile|>' + Edit1.Text + '\' +
134 | ExtractFileName(OpenDialog1.FileName) + '<<|');
135 | // showMessage(intToStr(Form1.ArquivoEnviar.Size));
136 | end;
137 | end;
138 |
139 | procedure TForm3.Timer1Timer(Sender: TObject);
140 | begin
141 | try
142 | ProgressBar2.Position := ArquivoEnviar.Position;
143 | except
144 | ProgressBar2.Position := 0;
145 | // ArquivoEnviar.Free;
146 | Timer1.Enabled := false;
147 | end;
148 | end;
149 |
150 | procedure TForm3.Atualizar1Click(Sender: TObject);
151 | begin
152 | try
153 | Socket.SendText('<|Folder|>' + Edit1.Text + '<<|');
154 | except
155 | exit;
156 | end;
157 | end;
158 |
159 | procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction);
160 | var
161 | L: TListItem;
162 | begin
163 | L := Form1.LV1.FindCaption(0, intToStr(Socket.Handle), false, true, false);
164 | { try
165 | if L <> nil then begin
166 | L.SubItems.Objects[4] := nil;
167 | Free;
168 | end;
169 | except
170 | L.SubItems.Objects[4] := nil;
171 | end; }
172 |
173 | // Destroy;
174 |
175 | end;
176 |
177 | end.
178 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Principal.ddp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/Principal.ddp
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Principal.dfm:
--------------------------------------------------------------------------------
1 | object Form1: TForm1
2 | Left = 199
3 | Top = 146
4 | Caption = 'Access PC - Servidor'
5 | ClientHeight = 377
6 | ClientWidth = 832
7 | Color = clBtnFace
8 | Font.Charset = DEFAULT_CHARSET
9 | Font.Color = clWindowText
10 | Font.Height = -11
11 | Font.Name = 'MS Sans Serif'
12 | Font.Style = []
13 | OldCreateOrder = False
14 | Position = poDesktopCenter
15 | PixelsPerInch = 96
16 | TextHeight = 13
17 | object Panel1: TPanel
18 | Left = 0
19 | Top = 335
20 | Width = 832
21 | Height = 42
22 | Align = alBottom
23 | TabOrder = 0
24 | object Bevel1: TBevel
25 | Left = 328
26 | Top = 0
27 | Width = 17
28 | Height = 41
29 | Shape = bsLeftLine
30 | end
31 | object Label1: TLabel
32 | Left = 104
33 | Top = 15
34 | Width = 28
35 | Height = 13
36 | Caption = 'Porta:'
37 | end
38 | object Label2: TLabel
39 | Left = 200
40 | Top = 14
41 | Width = 34
42 | Height = 13
43 | Caption = 'Senha:'
44 | end
45 | object Button1: TButton
46 | Left = 8
47 | Top = 9
48 | Width = 75
49 | Height = 25
50 | Caption = 'Ativar'
51 | TabOrder = 0
52 | OnClick = Button1Click
53 | end
54 | object Button3: TButton
55 | Left = 336
56 | Top = 8
57 | Width = 75
58 | Height = 25
59 | Caption = 'Sobre'
60 | TabOrder = 1
61 | OnClick = Button3Click
62 | end
63 | object Edit1: TEdit
64 | Left = 136
65 | Top = 11
66 | Width = 49
67 | Height = 21
68 | TabOrder = 2
69 | Text = '6651'
70 | end
71 | object Edit2: TEdit
72 | Left = 240
73 | Top = 10
74 | Width = 73
75 | Height = 21
76 | PasswordChar = '*'
77 | TabOrder = 3
78 | end
79 | end
80 | object LV1: TListView
81 | Left = 0
82 | Top = 0
83 | Width = 832
84 | Height = 316
85 | Align = alClient
86 | Columns = <
87 | item
88 | Caption = 'IDSock'
89 | Width = 70
90 | end
91 | item
92 | Caption = 'Identifica'#231#227'o'
93 | Width = 170
94 | end
95 | item
96 | Caption = 'Sistema Operacional'
97 | Width = 170
98 | end
99 | item
100 | Caption = 'Processador'
101 | Width = 190
102 | end
103 | item
104 | Caption = 'IP'
105 | Width = 150
106 | end
107 | item
108 | Caption = 'Ping'
109 | end>
110 | Enabled = False
111 | GridLines = True
112 | ReadOnly = True
113 | RowSelect = True
114 | PopupMenu = PopupMenu1
115 | TabOrder = 1
116 | ViewStyle = vsReport
117 | end
118 | object StatusBar1: TStatusBar
119 | Left = 0
120 | Top = 316
121 | Width = 832
122 | Height = 19
123 | Panels = <
124 | item
125 | Text = 'Status:'
126 | Width = 50
127 | end
128 | item
129 | Text = 'Desativado'
130 | Width = 100
131 | end>
132 | end
133 | object PopupMenu1: TPopupMenu
134 | Left = 344
135 | Top = 104
136 | object Fecharconexo1: TMenuItem
137 | Caption = 'Acessar Computador'
138 | OnClick = Fecharconexo1Click
139 | end
140 | object Chato1: TMenuItem
141 | Caption = 'Chat'
142 | OnClick = Chato1Click
143 | end
144 | object GerenciadordeArquivos1: TMenuItem
145 | Caption = 'Compartilhador de Arquivos'
146 | OnClick = GerenciadordeArquivos1Click
147 | end
148 | object N1: TMenuItem
149 | Caption = '-'
150 | end
151 | object FecharConexo2: TMenuItem
152 | Caption = 'Fechar Conex'#227'o'
153 | OnClick = FecharConexo2Click
154 | end
155 | end
156 | object SS1: TServerSocket
157 | Active = False
158 | Port = 6651
159 | ServerType = stNonBlocking
160 | OnListen = SS1Listen
161 | OnAccept = SS1Accept
162 | OnClientDisconnect = SS1ClientDisconnect
163 | OnClientError = SS1ClientError
164 | Left = 392
165 | Top = 104
166 | end
167 | object Timer1: TTimer
168 | Interval = 5000
169 | OnTimer = Timer1Timer
170 | Left = 432
171 | Top = 104
172 | end
173 | object ApplicationEvents1: TApplicationEvents
174 | OnException = ApplicationEvents1Exception
175 | Left = 464
176 | Top = 104
177 | end
178 | end
179 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/Principal.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/Principal.pas
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/StreamManager.pas:
--------------------------------------------------------------------------------
1 | unit StreamManager;
2 |
3 | interface
4 |
5 | uses
6 | Windows,Classes,Graphics;
7 |
8 | procedure GetScreenToBmp(DrawCur:Boolean;StreamName:TMemoryStream);
9 | procedure CompareStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
10 | procedure ResumeStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
11 |
12 | implementation
13 |
14 | // Captura a tela
15 | procedure GetScreenToBmp(DrawCur:Boolean;StreamName:TMemoryStream);
16 | var
17 | Mybmp:Tbitmap;
18 | Cursorx, Cursory: integer;
19 | dc: hdc;
20 | Mycan: Tcanvas;
21 | R: TRect;
22 | DrawPos: TPoint;
23 | MyCursor: TIcon;
24 | hld: hwnd;
25 | Threadld: dword;
26 | mp: tpoint;
27 | pIconInfo: TIconInfo;
28 | begin
29 | Mybmp := Tbitmap.Create;
30 | Mycan := TCanvas.Create;
31 | dc := GetWindowDC(0);
32 | try
33 | Mycan.Handle := dc;
34 | R := Rect(0, 0, GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN));
35 | Mybmp.Width := R.Right;
36 | Mybmp.Height := R.Bottom;
37 | Mybmp.Canvas.CopyRect(R, Mycan, R);
38 | finally
39 | releaseDC(0, DC);
40 | end;
41 | Mycan.Handle := 0;
42 | Mycan.Free;
43 |
44 | if DrawCur then
45 | begin
46 | GetCursorPos(DrawPos);
47 | MyCursor := TIcon.Create;
48 | getcursorpos(mp);
49 | hld := WindowFromPoint(mp);
50 | Threadld := GetWindowThreadProcessId(hld, nil);
51 | AttachThreadInput(GetCurrentThreadId, Threadld, True);
52 | MyCursor.Handle := Getcursor();
53 | AttachThreadInput(GetCurrentThreadId, threadld, False);
54 | GetIconInfo(Mycursor.Handle, pIconInfo);
55 | cursorx := DrawPos.x - round(pIconInfo.xHotspot);
56 | cursory := DrawPos.y - round(pIconInfo.yHotspot);
57 | Mybmp.Canvas.Draw(cursorx, cursory, MyCursor);
58 | DeleteObject(pIconInfo.hbmColor);
59 | DeleteObject(pIconInfo.hbmMask);
60 | Mycursor.ReleaseHandle;
61 | MyCursor.Free;
62 | end;
63 | Mybmp.PixelFormat:=pf8bit;
64 | Mybmp.SaveToStream(StreamName);
65 | Mybmp.Free;
66 | end;
67 |
68 | // Compara as Streams e as Separam quando os Pixels da Bitmap forem iguais.
69 | procedure CompareStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
70 | var
71 | I: Integer;
72 | P1, P2, P3: ^AnsiChar;
73 | begin
74 | MySecondStream.Clear;
75 | MyCompareStream.Clear;
76 | GetScreenToBmp(true,MySecondStream);
77 |
78 | P1 := MyFirstStream.Memory;
79 | P2 := MySecondStream.Memory;
80 | MyCompareStream.SetSize(MyFirstStream.Size);
81 | P3 := MyCompareStream.Memory;
82 |
83 | for I := 0 to MyFirstStream.Size - 1 do
84 | begin
85 | if P1^ = P2^ then
86 | P3^ := '0'
87 | else
88 | P3^ := P2^;
89 | Inc(P1);
90 | Inc(P2);
91 | Inc(P3);
92 | end;
93 |
94 | MyFirstStream.Clear;
95 | MyFirstStream.CopyFrom(MySecondStream,0);
96 | end;
97 |
98 | // Modifica as Streams para reajustar os Pixels da Bitmap
99 | procedure ResumeStream(MyFirstStream,MySecondStream,MyCompareStream:TMemorystream);
100 | var
101 | I: Integer;
102 | P1, P2, P3: ^AnsiChar;
103 | begin
104 | P1 := MyFirstStream.Memory;
105 | MySecondStream.SetSize(MyFirstStream.Size);
106 | P2 := MySecondStream.Memory;
107 | P3 := MyCompareStream.Memory;
108 |
109 | for I := 0 to MyFirstStream.Size - 1 do
110 | begin
111 | if P3^ = '0' then
112 | P2^ := p1^
113 | else
114 | P2^ := P3^;
115 | Inc(P1);
116 | Inc(P2);
117 | Inc(P3);
118 | end;
119 |
120 | MyFirstStream.Clear;
121 | MyFirstStream.CopyFrom(MySecondStream,0);
122 | MySecondStream.Position:=0;
123 | end;
124 |
125 | end.
126 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/UAC.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/UAC.RES
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/UAC.manifest:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/UAC.rc:
--------------------------------------------------------------------------------
1 | 1 24 "UAC.manifest"
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/zlib/adler32.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/zlib/adler32.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/zlib/deflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/zlib/deflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/zlib/infblock.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/zlib/infblock.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/zlib/infcodes.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/zlib/infcodes.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/zlib/inffast.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/zlib/inffast.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/zlib/inflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/zlib/inflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/zlib/inftrees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/zlib/inftrees.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/zlib/infutil.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/zlib/infutil.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Servidor/zlib/trees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Servidor/zlib/trees.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Units/StreamManager.pas:
--------------------------------------------------------------------------------
1 | unit StreamManager;
2 |
3 | interface
4 |
5 | uses
6 | Windows, Classes, Graphics;
7 |
8 | procedure GetScreenToBmp(DrawCur: Boolean; StreamName: TMemoryStream);
9 | procedure CompareStream(MyFirstStream, MySecondStream, MyCompareStream
10 | : TMemoryStream);
11 | procedure ResumeStream(MyFirstStream, MySecondStream, MyCompareStream
12 | : TMemoryStream);
13 |
14 | implementation
15 |
16 | // Captura a tela
17 | procedure GetScreenToBmp(DrawCur: Boolean; StreamName: TMemoryStream);
18 | var
19 | Mybmp: Tbitmap;
20 | Cursorx, Cursory: integer;
21 | dc: hdc;
22 | Mycan: Tcanvas;
23 | R: TRect;
24 | DrawPos: TPoint;
25 | MyCursor: TIcon;
26 | hld: hwnd;
27 | Threadld: dword;
28 | mp: TPoint;
29 | pIconInfo: TIconInfo;
30 | begin
31 | Mybmp := Tbitmap.Create;
32 | Mycan := Tcanvas.Create;
33 | dc := GetWindowDC(0);
34 | try
35 | Mycan.Handle := dc;
36 | R := Rect(0, 0, GetSystemMetrics(SM_CXSCREEN),
37 | GetSystemMetrics(SM_CYSCREEN));
38 | Mybmp.Width := R.Right;
39 | Mybmp.Height := R.Bottom;
40 | Mybmp.Canvas.CopyRect(R, Mycan, R);
41 | finally
42 | releaseDC(0, dc);
43 | end;
44 | Mycan.Handle := 0;
45 | Mycan.Free;
46 |
47 | if DrawCur then
48 | begin
49 | GetCursorPos(DrawPos);
50 | MyCursor := TIcon.Create;
51 | GetCursorPos(mp);
52 | hld := WindowFromPoint(mp);
53 | Threadld := GetWindowThreadProcessId(hld, nil);
54 | AttachThreadInput(GetCurrentThreadId, Threadld, True);
55 | MyCursor.Handle := Getcursor();
56 | AttachThreadInput(GetCurrentThreadId, Threadld, False);
57 | GetIconInfo(MyCursor.Handle, pIconInfo);
58 | Cursorx := DrawPos.x - round(pIconInfo.xHotspot);
59 | Cursory := DrawPos.y - round(pIconInfo.yHotspot);
60 | Mybmp.Canvas.Draw(Cursorx, Cursory, MyCursor);
61 | DeleteObject(pIconInfo.hbmColor);
62 | DeleteObject(pIconInfo.hbmMask);
63 | MyCursor.ReleaseHandle;
64 | MyCursor.Free;
65 | end;
66 | Mybmp.PixelFormat := pf8bit;
67 | Mybmp.SaveToStream(StreamName);
68 | Mybmp.Free;
69 | end;
70 |
71 | // Compara as Streams e as Separam quando os Pixels da Bitmap forem iguais.
72 | procedure CompareStream(MyFirstStream, MySecondStream, MyCompareStream
73 | : TMemoryStream);
74 | var
75 | I: integer;
76 | P1, P2, P3: ^AnsiChar;
77 | begin
78 | MySecondStream.Clear;
79 | MyCompareStream.Clear;
80 | GetScreenToBmp(True, MySecondStream);
81 |
82 | P1 := MyFirstStream.Memory;
83 | P2 := MySecondStream.Memory;
84 | MyCompareStream.SetSize(MyFirstStream.Size);
85 | P3 := MyCompareStream.Memory;
86 |
87 | for I := 0 to MyFirstStream.Size - 1 do
88 | begin
89 | if P1^ = P2^ then
90 | P3^ := '0'
91 | else
92 | P3^ := P2^;
93 | Inc(P1);
94 | Inc(P2);
95 | Inc(P3);
96 | end;
97 |
98 | MyFirstStream.Clear;
99 | MyFirstStream.CopyFrom(MySecondStream, 0);
100 | end;
101 |
102 | // Modifica as Streams para reajustar os Pixels da Bitmap
103 | procedure ResumeStream(MyFirstStream, MySecondStream, MyCompareStream
104 | : TMemoryStream);
105 | var
106 | I: integer;
107 | P1, P2, P3: ^AnsiChar;
108 | begin
109 | P1 := MyFirstStream.Memory;
110 | MySecondStream.SetSize(MyFirstStream.Size);
111 | P2 := MySecondStream.Memory;
112 | P3 := MyCompareStream.Memory;
113 |
114 | for I := 0 to MyFirstStream.Size - 1 do
115 | begin
116 | if P3^ = '0' then
117 | P2^ := P1^
118 | else
119 | P2^ := P3^;
120 | Inc(P1);
121 | Inc(P2);
122 | Inc(P3);
123 | end;
124 |
125 | MyFirstStream.Clear;
126 | MyFirstStream.CopyFrom(MySecondStream, 0);
127 | MySecondStream.Position := 0;
128 | end;
129 |
130 | end.
131 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Units/sndkey32.pas:
--------------------------------------------------------------------------------
1 | (*
2 | SendKeys routine for 32-bit Delphi.
3 |
4 | Written by Ken Henderson
5 |
6 | Copyright (c) 1995 Ken Henderson
7 |
8 | This unit includes two routines that simulate popular Visual Basic
9 | routines: Sendkeys and AppActivate. SendKeys takes a PChar
10 | as its first parameter and a boolean as its second, like so:
11 |
12 | SendKeys('KeyString', Wait);
13 |
14 | where KeyString is a string of key names and modifiers that you want
15 | to send to the current input focus and Wait is a boolean variable or value
16 | that indicates whether SendKeys should wait for each key message to be
17 | processed before proceeding. See the table below for more information.
18 |
19 | AppActivate also takes a PChar as its only parameter, like so:
20 |
21 | AppActivate('WindowName');
22 |
23 | where WindowName is the name of the window that you want to make the
24 | current input focus.
25 |
26 | SendKeys supports the Visual Basic SendKeys syntax, as documented below.
27 |
28 | Supported modifiers:
29 |
30 | + = Shift
31 | ^ = Control
32 | % = Alt
33 |
34 | Surround sequences of characters or key names with parentheses in order to
35 | modify them as a group. For example, '+abc' shifts only 'a', while '+(abc)' shifts
36 | all three characters.
37 |
38 | Supported special characters
39 |
40 | ~ = Enter
41 | ( = Begin modifier group (see above)
42 | ) = End modifier group (see above)
43 | { = Begin key name text (see below)
44 | } = End key name text (see below)
45 |
46 | Supported characters:
47 |
48 | Any character that can be typed is supported. Surround the modifier keys
49 | listed above with braces in order to send as normal text.
50 |
51 | Supported key names (surround these with braces):
52 |
53 | BKSP, BS, BACKSPACE
54 | BREAK
55 | CAPSLOCK
56 | CLEAR
57 | DEL
58 | DELETE
59 | DOWN
60 | END
61 | ENTER
62 | ESC
63 | ESCAPE
64 | F1
65 | F2
66 | F3
67 | F4
68 | F5
69 | F6
70 | F7
71 | F8
72 | F9
73 | F10
74 | F11
75 | F12
76 | F13
77 | F14
78 | F15
79 | F16
80 | HELP
81 | HOME
82 | INS
83 | LEFT
84 | NUMLOCK
85 | PGDN
86 | PGUP
87 | PRTSC
88 | RIGHT
89 | SCROLLLOCK
90 | TAB
91 | UP
92 |
93 | Follow the keyname with a space and a number to send the specified key a
94 | given number of times (e.g., {left 6}).
95 | *)
96 |
97 | unit sndkey32;
98 |
99 | interface
100 |
101 | Uses SysUtils, Windows, Messages;
102 |
103 | Function SendKeys(SendKeysString: PChar; Wait: Boolean): Boolean;
104 | function AppActivate(WindowName: PChar): Boolean; overload;
105 | function AppActivate(WindowHandle: HWND): Boolean; overload;
106 |
107 | { Buffer for working with PChar's }
108 |
109 | const
110 | WorkBufLen = 40;
111 |
112 | var
113 | WorkBuf: array [0 .. WorkBufLen] of Char;
114 |
115 | implementation
116 |
117 | type
118 | THKeys = array [0 .. pred(MaxLongInt)] of byte;
119 |
120 | var
121 | AllocationSize: integer;
122 |
123 | (*
124 | Converts a string of characters and key names to keyboard events and
125 | passes them to Windows.
126 |
127 | Example syntax:
128 |
129 | SendKeys('abc123{left}{left}{left}def{end}456{left 6}ghi{end}789', True);
130 |
131 | *)
132 |
133 | Function SendKeys(SendKeysString: PChar; Wait: Boolean): Boolean;
134 | type
135 | WBytes = array [0 .. pred(SizeOf(Word))] of byte;
136 |
137 | TSendKey = record
138 | Name: ShortString;
139 | VKey: byte;
140 | end;
141 |
142 | const
143 | { Array of keys that SendKeys recognizes.
144 |
145 | If you add to this list, you must be sure to keep it sorted alphabetically
146 | by Name because a binary search routine is used to scan it. }
147 |
148 | MaxSendKeyRecs = 41;
149 | SendKeyRecs: array [1 .. MaxSendKeyRecs] of TSendKey = ((Name: 'BACKSPACE';
150 | VKey: VK_BACK), (Name: 'BKSP'; VKey: VK_BACK), (Name: 'BREAK';
151 | VKey: VK_CANCEL), (Name: 'BS'; VKey: VK_BACK), (Name: 'CAPSLOCK';
152 | VKey: VK_CAPITAL), (Name: 'CLEAR'; VKey: VK_CLEAR), (Name: 'DEL';
153 | VKey: VK_DELETE), (Name: 'DELETE'; VKey: VK_DELETE), (Name: 'DOWN';
154 | VKey: VK_DOWN), (Name: 'END'; VKey: VK_END), (Name: 'ENTER';
155 | VKey: VK_RETURN), (Name: 'ESC'; VKey: VK_ESCAPE), (Name: 'ESCAPE';
156 | VKey: VK_ESCAPE), (Name: 'F1'; VKey: VK_F1), (Name: 'F10'; VKey: VK_F10),
157 | (Name: 'F11'; VKey: VK_F11), (Name: 'F12'; VKey: VK_F12), (Name: 'F13';
158 | VKey: VK_F13), (Name: 'F14'; VKey: VK_F14), (Name: 'F15'; VKey: VK_F15),
159 | (Name: 'F16'; VKey: VK_F16), (Name: 'F2'; VKey: VK_F2), (Name: 'F3';
160 | VKey: VK_F3), (Name: 'F4'; VKey: VK_F4), (Name: 'F5'; VKey: VK_F5),
161 | (Name: 'F6'; VKey: VK_F6), (Name: 'F7'; VKey: VK_F7), (Name: 'F8';
162 | VKey: VK_F8), (Name: 'F9'; VKey: VK_F9), (Name: 'HELP'; VKey: VK_HELP),
163 | (Name: 'HOME'; VKey: VK_HOME), (Name: 'INS'; VKey: VK_INSERT),
164 | (Name: 'LEFT'; VKey: VK_LEFT), (Name: 'NUMLOCK'; VKey: VK_NUMLOCK),
165 | (Name: 'PGDN'; VKey: VK_NEXT), (Name: 'PGUP'; VKey: VK_PRIOR),
166 | (Name: 'PRTSC'; VKey: VK_PRINT), (Name: 'RIGHT'; VKey: VK_RIGHT),
167 | (Name: 'SCROLLLOCK'; VKey: VK_SCROLL), (Name: 'TAB'; VKey: VK_TAB),
168 | (Name: 'UP'; VKey: VK_UP));
169 |
170 | { Extra VK constants missing from Delphi's Windows API interface }
171 | VK_NULL = 0;
172 | VK_SemiColon = 186;
173 | VK_Equal = 187;
174 | VK_Comma = 188;
175 | VK_Minus = 189;
176 | VK_Period = 190;
177 | VK_Slash = 191;
178 | VK_BackQuote = 192;
179 | VK_LeftBracket = 219;
180 | VK_BackSlash = 220;
181 | VK_RightBracket = 221;
182 | VK_Quote = 222;
183 | VK_Last = VK_Quote;
184 |
185 | ExtendedVKeys: set of byte = [VK_UP, VK_DOWN, VK_LEFT, VK_RIGHT, VK_HOME,
186 | VK_END, VK_PRIOR, { PgUp }
187 | VK_NEXT, { PgDn }
188 | VK_INSERT, VK_DELETE];
189 |
190 | const
191 | INVALIDKEY = $FFFF { Unsigned -1 };
192 | VKKEYSCANSHIFTON = $01;
193 | VKKEYSCANCTRLON = $02;
194 | VKKEYSCANALTON = $04;
195 | UNITNAME = 'SendKeys';
196 | var
197 | UsingParens, ShiftDown, ControlDown, AltDown, FoundClose: Boolean;
198 | PosSpace: byte;
199 | I, L: integer;
200 | NumTimes, MKey: Word;
201 | KeyString: String[20];
202 |
203 | procedure DisplayMessage(Message: PChar);
204 | begin
205 | // MessageBox(0,Message,UNITNAME,0);
206 | end;
207 |
208 | function BitSet(BitTable, BitMask: byte): Boolean;
209 | begin
210 | Result := ByteBool(BitTable and BitMask);
211 | end;
212 |
213 | procedure SetBit(var BitTable: byte; BitMask: byte);
214 | begin
215 | BitTable := BitTable or BitMask;
216 | end;
217 |
218 | Procedure KeyboardEvent(VKey, ScanCode: byte; Flags: Longint);
219 | var
220 | KeyboardMsg: TMsg;
221 | begin
222 | keybd_event(VKey, ScanCode, Flags, 0);
223 | If (Wait) then
224 | While (PeekMessage(KeyboardMsg, 0, WM_KEYFIRST, WM_KEYLAST, PM_REMOVE)) do
225 | begin
226 | TranslateMessage(KeyboardMsg);
227 | DispatchMessage(KeyboardMsg);
228 | end;
229 | end;
230 |
231 | Procedure SendKeyDown(VKey: byte; NumTimes: Word; GenUpMsg: Boolean);
232 | var
233 | Cnt: Word;
234 | ScanCode: byte;
235 | NumState: Boolean;
236 | KeyBoardState: TKeyboardState;
237 | begin
238 | If (VKey = VK_NUMLOCK) then
239 | begin
240 | NumState := ByteBool(GetKeyState(VK_NUMLOCK) and 1);
241 | GetKeyBoardState(KeyBoardState);
242 | If NumState then
243 | KeyBoardState[VK_NUMLOCK] := (KeyBoardState[VK_NUMLOCK] and not 1)
244 | else
245 | KeyBoardState[VK_NUMLOCK] := (KeyBoardState[VK_NUMLOCK] or 1);
246 | SetKeyBoardState(KeyBoardState);
247 | exit;
248 | end;
249 |
250 | ScanCode := Lo(MapVirtualKey(VKey, 0));
251 | For Cnt := 1 to NumTimes do
252 | If (VKey in ExtendedVKeys) then
253 | begin
254 | KeyboardEvent(VKey, ScanCode, KEYEVENTF_EXTENDEDKEY);
255 | If (GenUpMsg) then
256 | KeyboardEvent(VKey, ScanCode, KEYEVENTF_EXTENDEDKEY or
257 | KEYEVENTF_KEYUP)
258 | end
259 | else
260 | begin
261 | KeyboardEvent(VKey, ScanCode, 0);
262 | If (GenUpMsg) then
263 | KeyboardEvent(VKey, ScanCode, KEYEVENTF_KEYUP);
264 | end;
265 | end;
266 |
267 | Procedure SendKeyUp(VKey: byte);
268 | var
269 | ScanCode: byte;
270 | begin
271 | ScanCode := Lo(MapVirtualKey(VKey, 0));
272 | If (VKey in ExtendedVKeys) then
273 | KeyboardEvent(VKey, ScanCode, KEYEVENTF_EXTENDEDKEY and KEYEVENTF_KEYUP)
274 | else
275 | KeyboardEvent(VKey, ScanCode, KEYEVENTF_KEYUP);
276 | end;
277 |
278 | Procedure SendKey(MKey: Word; NumTimes: Word; GenDownMsg: Boolean);
279 | begin
280 | If (BitSet(Hi(MKey), VKKEYSCANSHIFTON)) then
281 | SendKeyDown(VK_SHIFT, 1, False);
282 | If (BitSet(Hi(MKey), VKKEYSCANCTRLON)) then
283 | SendKeyDown(VK_CONTROL, 1, False);
284 | If (BitSet(Hi(MKey), VKKEYSCANALTON)) then
285 | SendKeyDown(VK_MENU, 1, False);
286 | SendKeyDown(Lo(MKey), NumTimes, GenDownMsg);
287 | If (BitSet(Hi(MKey), VKKEYSCANSHIFTON)) then
288 | SendKeyUp(VK_SHIFT);
289 | If (BitSet(Hi(MKey), VKKEYSCANCTRLON)) then
290 | SendKeyUp(VK_CONTROL);
291 | If (BitSet(Hi(MKey), VKKEYSCANALTON)) then
292 | SendKeyUp(VK_MENU);
293 | end;
294 |
295 | { Implements a simple binary search to locate special key name strings }
296 |
297 | Function StringToVKey(KeyString: ShortString): Word;
298 | var
299 | Found, Collided: Boolean;
300 | Bottom, Top, Middle: byte;
301 | begin
302 | Result := INVALIDKEY;
303 | Bottom := 1;
304 | Top := MaxSendKeyRecs;
305 | Found := False;
306 | Middle := (Bottom + Top) div 2;
307 | Repeat
308 | Collided := ((Bottom = Middle) or (Top = Middle));
309 | If (KeyString = SendKeyRecs[Middle].Name) then
310 | begin
311 | Found := True;
312 | Result := SendKeyRecs[Middle].VKey;
313 | end
314 | else
315 | begin
316 | If (KeyString > SendKeyRecs[Middle].Name) then
317 | Bottom := Middle
318 | else
319 | Top := Middle;
320 | Middle := (Succ(Bottom + Top)) div 2;
321 | end;
322 | Until (Found or Collided);
323 | If (Result = INVALIDKEY) then
324 | DisplayMessage('Invalid Key Name');
325 | end;
326 |
327 | procedure PopUpShiftKeys;
328 | begin
329 | If (not UsingParens) then
330 | begin
331 | If ShiftDown then
332 | SendKeyUp(VK_SHIFT);
333 | If ControlDown then
334 | SendKeyUp(VK_CONTROL);
335 | If AltDown then
336 | SendKeyUp(VK_MENU);
337 | ShiftDown := False;
338 | ControlDown := False;
339 | AltDown := False;
340 | end;
341 | end;
342 |
343 | begin
344 | AllocationSize := MaxInt;
345 | Result := False;
346 | UsingParens := False;
347 | ShiftDown := False;
348 | ControlDown := False;
349 | AltDown := False;
350 | I := 0;
351 | L := StrLen(SendKeysString);
352 | If (L > AllocationSize) then
353 | L := AllocationSize;
354 | If (L = 0) then
355 | exit;
356 |
357 | While (I < L) do
358 | begin
359 | case SendKeysString[I] of
360 | '(':
361 | begin
362 | UsingParens := True;
363 | Inc(I);
364 | end;
365 | ')':
366 | begin
367 | UsingParens := False;
368 | PopUpShiftKeys;
369 | Inc(I);
370 | end;
371 | '%':
372 | begin
373 | AltDown := True;
374 | SendKeyDown(VK_MENU, 1, False);
375 | Inc(I);
376 | end;
377 | '+':
378 | begin
379 | ShiftDown := True;
380 | SendKeyDown(VK_SHIFT, 1, False);
381 | Inc(I);
382 | end;
383 | '^':
384 | begin
385 | ControlDown := True;
386 | SendKeyDown(VK_CONTROL, 1, False);
387 | Inc(I);
388 | end;
389 | '{':
390 | begin
391 | NumTimes := 1;
392 | If (SendKeysString[Succ(I)] = '{') then
393 | begin
394 | MKey := VK_LeftBracket;
395 | SetBit(WBytes(MKey)[1], VKKEYSCANSHIFTON);
396 | SendKey(MKey, 1, True);
397 | PopUpShiftKeys;
398 | Inc(I, 3);
399 | Continue;
400 | end;
401 | KeyString := '';
402 | FoundClose := False;
403 | While (I <= L) do
404 | begin
405 | Inc(I);
406 | If (SendKeysString[I] = '}') then
407 | begin
408 | FoundClose := True;
409 | Inc(I);
410 | Break;
411 | end;
412 | KeyString := KeyString + Upcase(SendKeysString[I]);
413 | end;
414 | If (Not FoundClose) then
415 | begin
416 | DisplayMessage('No Close');
417 | exit;
418 | end;
419 | If (SendKeysString[I] = '}') then
420 | begin
421 | MKey := VK_RightBracket;
422 | SetBit(WBytes(MKey)[1], VKKEYSCANSHIFTON);
423 | SendKey(MKey, 1, True);
424 | PopUpShiftKeys;
425 | Inc(I);
426 | Continue;
427 | end;
428 | PosSpace := Pos(' ', KeyString);
429 | If (PosSpace <> 0) then
430 | begin
431 | NumTimes := StrToInt(Copy(KeyString, Succ(PosSpace),
432 | Length(KeyString) - PosSpace));
433 | KeyString := Copy(KeyString, 1, pred(PosSpace));
434 | end;
435 | If (Length(KeyString) = 1) then
436 | MKey := vkKeyScan(WideChar(KeyString[1]))
437 | else
438 | MKey := StringToVKey(KeyString);
439 | If (MKey <> INVALIDKEY) then
440 | begin
441 | SendKey(MKey, NumTimes, True);
442 | PopUpShiftKeys;
443 | Continue;
444 | end;
445 | end;
446 | '~':
447 | begin
448 | SendKeyDown(VK_RETURN, 1, True);
449 | PopUpShiftKeys;
450 | Inc(I);
451 | end;
452 | else
453 | begin
454 | MKey := vkKeyScan(SendKeysString[I]);
455 | If (MKey <> INVALIDKEY) then
456 | begin
457 | SendKey(MKey, 1, True);
458 | PopUpShiftKeys;
459 | end
460 | else
461 | DisplayMessage('Invalid KeyName');
462 | Inc(I);
463 | end;
464 | end;
465 | end;
466 | Result := True;
467 | PopUpShiftKeys;
468 | end;
469 |
470 | { AppActivate
471 |
472 | This is used to set the current input focus to a given window using its
473 | name. This is especially useful for ensuring a window is active before
474 | sending it input messages using the SendKeys function. You can specify
475 | a window's name in its entirety, or only portion of it, beginning from
476 | the left.
477 |
478 | }
479 |
480 | var
481 | WindowHandle: HWND;
482 |
483 | function EnumWindowsProc(WHandle: HWND; lParam: lParam): BOOL; export; stdcall;
484 | var
485 | WindowName: array [0 .. MAX_PATH] of Char;
486 | begin
487 | { Can't test GetWindowText's return value since some windows don't have a title }
488 | GetWindowText(WHandle, WindowName, MAX_PATH);
489 | Result := (StrLIComp(WindowName, PChar(lParam), StrLen(PChar(lParam))) <> 0);
490 | If (not Result) then
491 | WindowHandle := WHandle;
492 | end;
493 |
494 | function AppActivate(WindowHandle: HWND): Boolean; overload;
495 | begin
496 | try
497 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_HOTKEY, WindowHandle);
498 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_RESTORE, WindowHandle);
499 | Result := SetForegroundWindow(WindowHandle);
500 | except
501 | on Exception do
502 | Result := False;
503 | end;
504 | end;
505 |
506 | function AppActivate(WindowName: PChar): Boolean; overload;
507 | begin
508 | try
509 | Result := True;
510 | WindowHandle := FindWindow(nil, WindowName);
511 | If (WindowHandle = 0) then
512 | EnumWindows(@EnumWindowsProc, integer(PChar(WindowName)));
513 | If (WindowHandle <> 0) then
514 | begin
515 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_HOTKEY, WindowHandle);
516 | SendMessage(WindowHandle, WM_SYSCOMMAND, SC_RESTORE, WindowHandle);
517 | SetForegroundWindow(WindowHandle);
518 | end
519 | else
520 | Result := False;
521 | except
522 | on Exception do
523 | Result := False;
524 | end;
525 | end;
526 |
527 | end.
528 |
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Units/zlib/adler32.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Units/zlib/adler32.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Units/zlib/deflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Units/zlib/deflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Units/zlib/infblock.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Units/zlib/infblock.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Units/zlib/infcodes.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Units/zlib/infcodes.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Units/zlib/inffast.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Units/zlib/inffast.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Units/zlib/inflate.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Units/zlib/inflate.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Units/zlib/inftrees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Units/zlib/inftrees.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Units/zlib/infutil.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Units/zlib/infutil.obj
--------------------------------------------------------------------------------
/Fontes Access PC - Delphi XE5/Units/zlib/trees.obj:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Fontes Access PC - Delphi XE5/Units/zlib/trees.obj
--------------------------------------------------------------------------------
/Informações do Access PC.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/maickonn/Delphi_Remote_Access_PC/0815a735df4237a8e0172d44b7df1feedaa370b5/Informações do Access PC.pdf
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 | ## Aviso de Descontinuação
3 | Este projeto foi descontinuado e, portanto, arquivado.
4 |
5 | ---
6 | ## Nota de Esclarecimento
7 | Lamentavelmente, alguns indivíduos de má índole têm usado os códigos deste projeto para criar malwares. Quero deixar claro que não apoio nem compactuo com essas atividades.
8 |
9 | Peço desculpas por qualquer inconveniente que isso possa ter causado. Não era minha intenção que este projeto fosse usado de forma prejudicial.
10 |
11 | Já considerei remover este projeto do GitHub, mas isso não resolveria o problema, uma vez que vários forks foram criados e trechos de código estão disseminados pela internet.
12 |
13 | ---
14 |
15 | O acesso remoto foi escrito em **Delphi 7** e **Delphi XE5**.
16 |
17 | Recursos:
18 | * Acesso Remoto com algorítimo RFB (Captura apenas o que foi alterado na tela).
19 | * Compressões de Dados.
20 | * Compartilhador de Arquivos.
21 | * Chat.
22 | * Herança de Formulários (Permite que você acesse várias máquinas ao mesmo tempo em várias janelas).
23 |
24 | ------------------------------------------------------------------------------
25 |
26 | *Todos os componentes utilizados são nativos do próprio Delphi.*
27 |
28 | Provavelmente quando você abrir o projeto, vai aparecer uma mensagem avisando que falta componente.
29 | O que você deve fazer é seguir os seguintes passos:
30 |
31 |
32 | -> Delphi 7:
33 | * Com o Delphi aberto, vá ao menu "Component"
34 | * Em seguida clique em "Install Packages..."
35 | * Clique no botão "Add"
36 | * Vá no diretório onde o Delphi está instalado e entre na pasta "Bin". ( C:\Program Files (x86)\Borland\Delphi7\Bin )
37 | * Selecione o arquivo "dclsockets70.bpl" e clique em Abrir.
38 | * Feche o Delphi e abra o projeto novamente.
39 |
40 | -> Delphi XE5:
41 | * Com o Delphi aberto, vá ao menu "Component"
42 | * Em seguida clique em "Install Packages..."
43 | * Clique no botão "Add"
44 | * Vá no diretório onde o Delphi está instalado e entre na pasta "Bin". ( C:\Program Files (x86)\Embarcadero\RAD Studio\12.0\bin )
45 | * Selecione o arquivo "dclsockets190.bpl" e clique em Abrir.
46 | * Feche o Delphi e abra o projeto novamente.
47 |
48 |
49 | Na pasta Units, você encontrará:
50 | * Unit zLibEx.pas com a pasta zLib - Usada para comprimir dados. (Você deve copiar a pasta zLib para dentro do Projeto).
51 | * StreamManager.pas - Criada para capturar a tela, e fazer a comparação.
52 | * SndKeys32.pas - Serve para simular tecla pressionada.
53 |
54 | Entendendo o funcionamento do Software.
55 |
56 | * Cliente conecta com o servidor. Ao conectar o primeiro Socket ele irá conectar os outros,
57 | que definem se vai ser para transferência de imagens, download e upload de arquivos ou de teclado remoto.
58 | O primeiro Socket transfere mensagens, a posição, e o clique do mouse.
59 |
60 | * Servidor pede a primeira imagem. Cliente irá capturar a tela (Captura é feita em Bitmap, 8bit para reduzir o tamanho)
61 | então ele irá receber uma compressão zLib. Após a compressão irá enviar a primeira
62 | imagem e logo após salvará a mesma na memória.
63 | Quando o servidor receber a imagem ele irá requisitar outra, onde o cliente irá comparar com a antiga e enviar só
64 | o que foi alterado. (Sempre comprimindo os dados).
65 |
--------------------------------------------------------------------------------