Skocz do zawartości

Kompilator


KozakPL

Rekomendowane odpowiedzi

  • Administratorzy
Borland Delphi 7

 

Ja też myślę, że do tworzenia w Delphi najlepsze będzie właśnie Delphi :) Ostatecznie chyba jeszcze Lazaurus. Btw. językiem uzywanym w delphi jest Object Pascal jak mnie pamieć nie myli.

Odnośnik do komentarza
Udostępnij na innych stronach

O ile się nie mylę jest darmowa wersja Borland Turbo Delphi czy tam Turbo Pascal. Wystarczy wysłać się zarejestrować i wysyłają serial mailem, ale nie jestem pewny.

 

E. Co do trojanów to na pewno nie napiszesz ich w Delphi to wyższa szkoła jazdy trzeba znać Asemblera

Odnośnik do komentarza
Udostępnij na innych stronach

Ehh...tak żeby nie zakładać nowego tematu:

 

Napisałem kod DLL'ka i praktycznie all jest źle xD

library KiM;


//--1--
//Wyłączanie Skrótów klawiszy(alt+F4 itp)
function WylaczSkrotyKlawiszy():double; stdcall;
var  wartosc:longbool;
begin
     SystemParametersInfo(97,Word(True),@wartosc,0);
end;
/*******************************************/
//--2--
//Włączanie Skrótów klawiszy(alt+F4 itp)
function WlaczSkrotyKlawiszy():double; stdcall;
var  wartosc:longbool;
begin
     SystemParametersInfo(97,Word(False),@wartosc,0);
end;
/*******************************************/
//--3--
//Polozenie Kursora
function PolozenieKursora():pchar;stdcall;
var Punkt:TPoint;
begin
     Result := GetCursorPos(Punkt);
end;
/*******************************************/
//--4--
//UstawPolozenieKursora
function UstawPolozenieKursora(kx,ky :double):double;stdcall;
begin
     Result := SetCursorPos(kx,ky);
end;
/*******************************************/
//--5--
//Zamiana Przycisków Myszy
function ZamianaPM():double;stdcall;
begin
     SwapMouseButton(True);
end;
/*******************************************/
//--6--
//Odmiana Przycisków Myszy
function OdmianaPM():double;stdcall;
begin
     SwapMouseButton(False);
end;
/*******************************************/
//--7--
//Ograniczenie Pola Po Którym Może Się Poruszać Mysz
function OgraniczenieObszaru(oG,oL,oP,oD :double):double;stdcall;
var Obszar:TRect;
begin
      Obszar.Top:=oG;
      Obszar.Left:=oL;
      Obszar.Right:=oP;
      Obszar.Bottom:=oD;
      ClipCursor(@Obszar);
end;
/*******************************************/
//--8--
//Zmiana Częstotliwości Migania Kursora
function MiganieKursora(czM :double):double;stdcall;
begin
     SetCaretBlinkTime(czM);
end;
/*******************************************/
//--9--
//Ukryj Kursor Klawiatury
function UkryjKK():double;stdcall;
begin
     HideCaret(Handle);
end;
/*******************************************/
//--10--
//Przywroc Kursor Klawiatury
function PrzywrocKK():double;stdcall;
begin
     ShowCaret(Handle);
end;
/*******************************************/
//--11--
//Chowaj Kursor Myszy
function ChowajKM():double;stdcall;
begin
     ShowCursor(False);
end;
/*******************************************/
//--12--
//Pokaż Kursor Myszy
function PokazKM():double;stdcall;
begin
     ShowCursor(True);
end;
/*******************************************/
//--13--
//Wylacz Klawiature
function WylaczKlawiature():double;stdcall;
uses ShellApi;
begin
     ShellExecute(Handle,'open','rundll32','keyboard,disable',nil,SW_SHOWNORMAL);
end;
/*******************************************/
//--14--
//Wylacz Mysz
function WylaczMysz():double;stdcall;
uses ShellApi;
begin
     ShellExecute(Handle,'open','rundll32','mouse,disable',nil,SW_SHOWNORMAL);
end;
/*******************************************/

//Exportowanie Funkcji DLL'a
exports WylaczSkrotyKlawiszy, WlaczSkrotyKlawiszy, PolozenieKursora,
            UstawPolozenieKursora,ZamianaPM,OdmianaPM,OgraniczenieObszaru,
            MiganieKursora,UkryjKK,PrzywrocKK,ChowajKM,PokazKM,
            WylaczKlawiature,WylaczMysz;


//Koniec Programu
begin
end.

 

Błędy

[Error] KiM.dpr(9): Undeclared identifier: 'SystemParametersInfo'
[Error] KiM.dpr(17): Undeclared identifier: 'SystemParametersInfo'
[Error] KiM.dpr(23): Undeclared identifier: 'TPoint'
[Error] KiM.dpr(25): Undeclared identifier: 'GetCursorPos'
[Error] KiM.dpr(32): Undeclared identifier: 'SetCursorPos'
[Error] KiM.dpr(39): Undeclared identifier: 'SwapMouseButton'
[Error] KiM.dpr(46): Undeclared identifier: 'SwapMouseButton'
[Error] KiM.dpr(52): Undeclared identifier: 'TRect'
[Error] KiM.dpr(54): Missing operator or semicolon
[Error] KiM.dpr(55): Missing operator or semicolon
[Error] KiM.dpr(56): Missing operator or semicolon
[Error] KiM.dpr(57): Missing operator or semicolon
[Error] KiM.dpr(58): Undeclared identifier: 'ClipCursor'
[Error] KiM.dpr(65): Undeclared identifier: 'SetCaretBlinkTime'
[Error] KiM.dpr(72): Undeclared identifier: 'HideCaret'
[Error] KiM.dpr(79): Undeclared identifier: 'ShowCaret'
[Error] KiM.dpr(86): Undeclared identifier: 'ShowCursor'
[Error] KiM.dpr(93): Undeclared identifier: 'ShowCursor'
[Error] KiM.dpr(99): Declaration expected but 'USES' found
[Error] KiM.dpr(103): Undeclared identifier: 'ShellExecute'
[Error] KiM.dpr(103): Undeclared identifier: 'Handle'
[Error] KiM.dpr(103): Undeclared identifier: 'SW_SHOWNORMAL'
[Error] KiM.dpr(109): Declaration expected but 'USES' found
[Error] KiM.dpr(111): Undeclared identifier: 'ShellExecute'
[Error] KiM.dpr(111): Undeclared identifier: 'Handle'
[Error] KiM.dpr(111): Undeclared identifier: 'SW_SHOWNORMAL'

Heh xD Może ktoś wyjaśnić? xD

Odnośnik do komentarza
Udostępnij na innych stronach

Wywal te linijki "Uses ShellAPI" z ciał funkcji i dodaj "Uses Windows, ShellAPI;" po "Library KiM;". W Delphi komentarze wieloliniowe wyglądają tak: { komentarz } a nie /* komentarz */. Hm, zdefiniuj jeszcze parametry funkcji w których wywołujesz funkcje WinAPI podając w argumentach "Handle" ;o

Może najpierw poczytaj parę tutoriali czy cuś zanim zaczniesz przeklejać gotowy kod z neta.

 

poprogramuj trochę w Delphi, w 5 minut to spokojnie kupy nie zrobisz, a Ty chcesz już umieć wszystko programować.

+1

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

Masz przykładowego DLLa działającego z GM:

 

library MyDLL;

uses SysUtils, Classes;

function MyMin(x,y:double):double;  cdecl;
begin
  if x<y then Result := x else Result := y;
end;

var res : array[0..1024] of char;

function DoubleString(str:PChar):PChar; cdecl;
begin
  StrCopy(res,str);
  StrCat(res,str);
  Result := res;
end;

exports MyMin, DoubleString;

begin
end.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...
  • Filar Społeczności
delphi to program (nie język programowania jak co niektórzy uważają).

To już było tyle razy wałkowane na gmclanie, że żal. Delphi jest zarówno środowiskiem IDE jak i językiem programowania. -_- Kiedyś w polskiej wikipedii był błąd jakoby językiem programowania jest Object Pascal, ale widzę że już to poprawili:

Dawniej język Delphi był nazywany Object Pascalem, lecz w świadomości społecznej programistów na całym świecie Delphi zaczęło być postrzegane z czasem jako osobny język programowania i dlatego też przy okazji premiery Delphi 6 w roku 2002 w oficjalnej dokumentacji programu została użyta po raz pierwszy nazwa "Delphi language". Standard języka Delphi obejmuje wiele bogatych funkcjonalnie klas, których nie ma w standardzie Object Pascala, a ponadto umożliwia programowanie wizualne, czyli Object-Oriented Design. Object Pascal jest rozszerzeniem języka Pascal ? został on rozwinięty przez firmę Apple Computer przy współpracy Larry'ego Teslera, głównego architekta, i Niklausa Wirtha, wynalazcy Pascala. Object Pascal wywodzi się z wcześniejszej, obiektowo zorientowanej wersji Pascala nazywanej Clascal, która była dostępna na komputery Lisa.
Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 miesiące temu...

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...