Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Dengan menggunakan komputer virtual Microsoft untuk Java (Microsoft VM) dan Microsoft Java Compiler, Anda memiliki akses ke semua fitur ADSI yang diekspos melalui komponen ADSI COM apa pun, dari aplikasi Java/COM. Contoh kode Java berikut menunjukkan elemen yang diperlukan untuk mengikat objek ADSI dan memanggil metode pada objek tersebut. Fungsi ADSI API dan metode objek yang diperlukan diekspos melalui Activeds.dll.
import activeds.*; // ADSI COM Wrapper classes
import com.ms.com.*; // to use _Guid data type in COM.
public Class SimpleADSI
{
IADs obj;
String path = "WinNT://domain/machine,computer";
_Guid riid = IADs.iid;
public static void main(String args[])
{
try
{
obj = (IADs)ADsGetObject(path, riid);
System.out.println( "Object name: " + obj.getName() );
System.out.println( " class: " + obj.getSchema() );
System.out.println( " ADsPath: " + obj.getADsPath() );
System.out.println( " parent: " + obj.getParent() );
}
catch (Exception e)
{
System.out.println( "SimpleADSI Error: " + e.toString() );
}
}
/** @dll.import("activeds", ole) */
private static native IUnknown ADsGetObject(String path, _Guid riid);
}
Argumen dalam pernyataan impor pertama mengacu pada kelas Java Wrapper yang dikemas dalam Activeds.dll. Gunakan Visual J++ untuk membuat kelas pembungkus dan menyertakannya dalam proyek Anda, mengikuti prosedur di bawah ini.
Untuk membuat kelas pembungkus dan menyertakannya dalam proyek Anda
- Dalam proyek Visual J++, pilih Tambahkan Com Wrapper... dari menu Project.
- Pilih "Pustaka Jenis DS Aktif" dari Komponen Terinstal: dari dialog COM Wrappers. Jika pustaka tipe tidak ditampilkan dalam kotak daftar, klik tombol Telusuri..., navigasikan ke direktori tempat Activeds.tlb disimpan, lalu pilih pustaka jenis.
Visual J++ membuat paket activeds untuk kelas Java Wrapper dan menyertakan paket ke dalam jalur default proyek. Untuk informasi selengkapnya, lihat paket activeds di panel Project Explore di jendela Visual J++.
Untuk mendapatkan objek ADSI yang tidak dapat dibuat bersama, gunakan salah satu fungsi ADSI API yang diekspos, misalnya, ADsGetObject atau ADsOpenObject, yang juga dipaketkan dalam Activeds.dll. Microsoft J/Direct menyediakan akses ke API asli ini dan lainnya. Ini diilustrasikan oleh dua baris terakhir dari contoh kode, di atas.
Saat mengkompilasi, pastikan Ekstensi Bahasa Microsoft diaktifkan. Untuk melakukan ini, pilih <proyek> Properti... dari menu Proyek di jendela Visual J++. Kemudian, klik tab Kompilasi di proyek<> Properti. Kosongkan kotak centang Nonaktifkan Ekstensi Bahasa Microsoft. Jika mengkompilasi dari baris perintah, gunakan sakelar "/x-", misalnya:
jvc /x- SimpleADSI.java
Terakhir, agar komputer virtual memuat komponen COM, pustaka tautan dinamis (DLL) harus terlihat pada jalur sistem. Jika kesalahan "java.lang.UnsatisfiedLinkError" dikembalikan, atur PATH untuk menyertakan jalur yang berisi DLL yang diperlukan. Misalnya, jika Activeds.dll telah diinstal di c:\adsi\lib, terbitkan perintah berikut dari baris perintah:
set PATH = %PATH%; c:\adsi\lib