![]() |
JAVA ile native kullanmak |
Yanıt Yaz ![]() |
Yazar | |
aziz.alkurt ![]() Admin Group ![]() ![]() Kayıt Tarihi: 27.Ocak.2012 Bulundugu Yer: FETHİYE Online: Sitede Değil Gönderilenler: 26 |
![]() ![]() ![]() Gönderim Zamanı: 22.Subat.2013 Saat 17:38 |
Visual Studio için
C++ boş "test" adlı bir proje oluşturalım. İçerisine "test.cpp" adında bir dosya açalım. Projeye sağ tıklayıp properties>C\C++>General>Additional include Directories kısmına (java programlama için JDK kurulmuş olması gerekir.) "C:\Program Files (x86)\Java\jdk1.6.0_38\include" ve "C:\Program Files (x86)\Java\jdk1.6.0_38\include\win32" eklediğimiz zaman "test.cpp" dosyası içersinde #include "jni.h" yapabiliriz. Birde "properties>C\C++>Code Generation" bölümünde Runtime Library kısmını "Multi Thread/MT" yaparsanız, oluşturduğunuz dll execude yapılırken C++ 2010 gibi kütüphanelere ihtiyaç duymaz. "test.cpp" kodu için ----------------------------------------------------------------------------------------- #include "jni.h" #include <string.h> extern "C" { JNIEXPORT jbyteArray Java_datakent_test_getStringBytes(JNIEnv *env, jclass clazz,jstring sx) { const char *sxx= env->GetStringUTFChars(sx, NULL); jbyteArray result=env->NewByteArray(strlen(sxx)); env->SetByteArrayRegion( result, 0,strlen(sxx), (const jbyte*)sxx); return result; } } ----------------------------------------------------------------------------------------- kodu derleyip d:/test.dll yaptık java tarafı ----------------------------------------------------------------------------------------- class datakent.test { static native byte[] getStringBytes(String sx); public static void main(String []xx) { System.load("d:/test.dll"); byte []cc=getStringBytes("Hello World!"); for(byte c : cc) System.out.print("%02X",c); } } ----------------------------------------------------------------------------------------- |
|
![]() |
|
turknetyazilim ![]() Üye Profili
Özel Mesaj Yolla
Bu kullanıcıya ait mesajları bul
Üyenin Web Sitesie Git
Arkadaş Listeme Ekle
Moderator Group ![]() ![]() Kayıt Tarihi: 18.Ocak.2008 Bulundugu Yer: Balıkesir Online: Sitede Değil Gönderilenler: 214 |
![]() ![]() ![]() |
Eline sağlık...
|
|
![]() |
|
aziz.alkurt ![]() Admin Group ![]() ![]() Kayıt Tarihi: 27.Ocak.2012 Bulundugu Yer: FETHİYE Online: Sitede Değil Gönderilenler: 26 |
![]() ![]() ![]() |
Rica ederim. Faydalı olmabilmişsem ne mutlu bana
|
|
![]() |
Yanıt Yaz ![]() |
Forum Atla | Forum İzinleri ![]() Kapalı Foruma Yeni Konu Gönderme Kapalı Forumdaki Konulara Cevap Yazma Kapalı Forumda Cevapları Silme Kapalı Forumdaki Cevapları Düzenleme Kapalı Forumda Anket Açma Kapalı Forumda Anketlerde Oy Kullanma |