Delphi Can
C Nesnelerini Delphi'de kullanmak - Baskı Önizleme

+- Delphi Can (http://www.delphican.com)
+-- Forum: Delphi (http://www.delphican.com/forum-delphi)
+--- Forum: Access violation (http://www.delphican.com/forum-access-violation)
+--- Konu Başlığı: C Nesnelerini Delphi'de kullanmak (/c-nesnelerini-delphi-de-kullanmak.html)



C Nesnelerini Delphi'de kullanmak - uparlayan - 09-01-2018

Merhaba, soru şu; "C'de  hazırlanmış bir object dosyasından fonksiyon ve prosedürleri Delphi'de nasıl kullanabiliriz?"

Aynı soruyu şu şekilde de sormak mümkün; "C'deki bir rutini Delphi'den nasıl çağırırız?"

Örnekleyerek kısaca anlatan herkese 10'ar puan ve ufak bir sürpriz Smile


C Nesnelerini Delphi'de kullanmak - uparlayan - 09-01-2018

C# ve DLL'den bahsetmiyorum Wink


Cvp: C Nesnelerini Delphi'de kullanmak - Halil Han Badem - 09-01-2018

Acilen uyumam gerek. Özür dilerim hocam Smile


Cvp: C Nesnelerini Delphi'de kullanmak - serhatil - 09-01-2018

Bilen yok galibaSmile


Cvp: C Nesnelerini Delphi'de kullanmak - csunguray - 09-01-2018

Aşağıdaki sayfada ayrıntılı olarak anlatılmıştır.Eğer işinize yarayacaksa Türkçe'ye çevirebilirim.

Using C object files in Delphi:
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol


Cvp: C Nesnelerini Delphi'de kullanmak - uparlayan - 09-01-2018

(09-01-2018, Saat: 20:38)csunguray Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlAşağıdaki sayfada ayrıntılı olarak anlatılmıştır.Eğer işinize yarayacaksa Türkçe'ye çevirebilirim.

Using C object files in Delphi:
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol

Maalesef geç kaldınız üstadım Smile


C Nesnelerini Delphi'de kullanmak - uparlayan - 10-01-2018

Çözüm ve sürpriz aşağıdaki linkte ye alıyor;

Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol

Buradan tekrar Linkleri Görebilmeniz İçin Giriş yap veya Üye Ole teşekkürlerimi sunuyorum.


Cvp: C Nesnelerini Delphi'de kullanmak - savasabd - 10-01-2018

(10-01-2018, Saat: 00:39)uparlayan Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlÇözüm ve sürpriz aşağıdaki linkte ye alıyor;

Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol

Buradan tekrar Linkleri Görebilmeniz İçin Giriş yap veya Üye Ole teşekkürlerimi sunuyorum.

Rica ederim,emekleriniz için ben teşekkür ederim.


Cvp: C Nesnelerini Delphi'de kullanmak - Tuğrul HELVACI - 10-01-2018

(09-01-2018, Saat: 20:38)csunguray Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlAşağıdaki sayfada ayrıntılı olarak anlatılmıştır.Eğer işinize yarayacaksa Türkçe'ye çevirebilirim.

Using C object files in Delphi:
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol

Kesinlikle katılıyorum.


Cvp: C Nesnelerini Delphi'de kullanmak - savasabd - 11-01-2018

Uyku tutmadı, ben bir örnek paylaşayım bariSmile

cprintf.c dosyası
#pragma once
#include<stdio.h>
#include<stdlib.h>
void __stdcall cprintf(char* format,char** argv,int argc)
{

int i=0;
int iesp;
__asm{
mov iesp,esp
}
for(i=argc-1;i>=0;i--)
{
char *item=argv[i];

__asm
{

push item
}
}
__asm
{
push format
call printf
mov esp,iesp
}


}

void __stdcall csystem(char * cmd){

system(cmd);


}

bcc32 -c cprintf.c komut satırıyla derliyoruz.

dprintf.dpr dosyası

program dprintf;

{$APPTYPE CONSOLE}

{$R *.res}
    {$L cprintf.obj}// derledğimiz object dosyasını linkere bildiriyoruz.
uses
 System.SysUtils;
Type
PPChar=^PAnsiChar;

procedure cprintf(format: PAnsiChar;argv: PPChar=nil;argc: integer=0);stdcall;external;
procedure csystem(cmd: PAnsiChar);stdcall;external;
function _printf(const Format: PChar): Integer; cdecl; varargs; external 'msvcrt.DLL' name 'printf' ;
function _system(const cmd: PChar): Integer; cdecl; external 'msvcrt.DLL' name 'system' ;

var
idizi: array [0..4] of integer=(1,2,5,9,13);
cdizi: array [0..2] of PAnsiChar=('Merhaba','Delphican','Forumu');

begin
cprintf('Merhaba C'#10);
cprintf('%d,%d,%d,%d,%d'#10,PPChar(@idizi[0]),5);
cprintf('%s %s %s'#10,@cdizi[0],3);
csystem('pause');
end.

Daha geniş açıklama zaten makalede var.