Windows
API
API singkatan dari Application Programming Interface. Berfungsi sebagai perangkat lunak antarmuka untuk digunakan oleh program lain. API adalah software interface untuk sistem operasi. API merupakan dasar pemrograman tingkat tinggi. Dalam pemrograman tingkat tinggi, sebuah program sering tidak melaksanakan tugas-tugas itu sendiri tapi malah memerintahkan beberapa program lain untuk melaksanakannya.
Windows API menangani segala sesuatu seperti gambar di monitor, akses disk, printer interface, penggunaan internet, dll. Juga menyediakan sebagian besar fitur umum pada semua perangkat lunak berbasis Windows. Misalnya, kotak dialog umum (Open, Save As, Pilih Font, dll), Windows shell, kotak daftar, pengaturan sistem operasi, dan bahkan jendela sendiri disediakan oleh Windows API.
Windows API ini terletak di salah satu file DLL (Dynamic Link Library) di C:\Windows\ System direktori (atau di mana pun Sistem Windows direktori). Sebagian besar fungsi API ditemukan di user32.dll (fungsi antarmuka pengguna), kernel32.dll (fungsi kernel sistem operasi), dan gdi32.dll (perangkat antarmuka grafis fungsi), dan shell32.dll (Windows shell fungsi).
Komponen dari Windows API:
Fungsi
Fungsi membentuk inti dari Windows API. Berupa kode aktual yang menyelesaikan berbagai tugas yang ditangani oleh API.
Struktur
Kombinasi dari beberapa variabel individu, yang sering digunakan dalam Windows API untuk menyimpan informasi terkait kelompok.
Named Constants
Penamaan konstanta ini memberikan cara yang lebih nyaman untuk merujuk kepada nilai-nilai ini dalam kode. Kadang-kadang konstanta ini digunakan sebagai flags: nilai data dapat menjadi biner atau flag dari beberapa individu, yang memungkinkan satu nilai untuk menyimpan berbagai informasi.
Fungsi callback
Fungsi panggilan balik adalah kebalikan dari fungsi API. Fungsi ini kemudian disebut dengan fungsi API rutin ketika melaksanakan tugas.
Pesan
Pesan adalah tipe khusus bernama konstan. diberi nilai numerik namun berperilaku berbeda. Pesan yang dikirim ke obyek (terutama windows) memberitahu mereka untuk melakukan sesuatu.
Penggunaan Windows API memiliki kekurangan.
- fungsi API lebih rawan kesalahan daripada menggunakan fungsi bahasa pemrograman intrinsik.
- informasi yang dilewatkan ke dan dari fungsi harus kompatibel dengan C + + sintaks, dapat menyebabkan sulit menemukan masalah tentang pointer, mengakhiri nulls, dan lain-lain.
- fungsi API cenderung gagal spektakuler. dapat dengan mudah crash seluruh program, memaksanya untuk menutup dengan GPF (General Production Fault).
- Jika Visual Basic atau bahasa apa pun yang Anda gunakan memiliki kemampuan untuk melakukan tugas tertentu, Anda lebih baik tidak menggunakan Windows API untuk itu. Tetapi jika ingin menambahkan lebih banyak kekuatan untuk program dimana VB tidak dapat menyediakan, Windows API adalah satu-satunya cara untuk malakukannya.
Dasar Pennggunaan Fungsi API:
Deklarasi Fungsi
Sebelum fungsi API dapat digunakan dalam Visual Basic, pertama harus dideklarasikan dahulu. Visual Basic akan dapat menemukan fungsi. Mengidentifikasi kembali deklarasi nama fungsi, file DLL, parameter-parameter yang dibutuhkan, dan tipe data (jika ada).
Daftar identifikasi berbagai komponen dari pernyataan Deklarasi.
function_name
DLL_filename
function_alias
argument_list
data_type
Argumen List
Daftar Argumen menentukan berapa banyak dan apa jenis variabel yang dilewatkan ke fungsi. Formatnya sangat mirip dengan daftar argumen yang ditetapkan program Fungsi atau Sub. Baris berikut menggambarkan sintaks dari daftar argumen. Perlu diketahui bahwa beberapa fungsi mengambil daftar argumen kosong - mereka tidak melewati data apapun sama sekali.
[(ByVal | ByRef)] argument_name Sebagai data_type, ...
argument_name
Nama yang diberikan kepada argumen. Ketika menyatakan panggilan API panggilan, ini hanya berfungsi untuk memberikan petunjuk mengenai parameter apa yang diwakilinya.
data_type:
Byte
8-bit integer.
Integer
A 16-bit integer.
Panjang
32-bit integer.
String
Panjanng Variabel string .
ByVal dan ByRef
The ByVal dan ByRef kata kunci menentukan metode yang digunakan untuk melewatkan parameter ke fungsi API.
ByVal secara harfiah berarti "Dengan Nilai." Nilai variabel atau ekspresi apapun dilewatkan sebagai parameter.
ByRef secara harfiah berarti "Dengan Reference." Alih-alih melewati isi dari variabel, metode ini melewati semacam referensi ke variabel itu sendiri. Hal ini memungkinkan fungsi untuk mengedit isi dari variabel yang dikirimkan sebagai parameter.
Ada beberapa poin tambahan untuk diingat tentang ByVal dan ByRef:
1. String ByVal selalu berlalu.
2. Ditetapkan pengguna struktur, termasuk struktur yang digunakan oleh API, ByRef selalu berlalu.
3. Array selalu melewati ByRef ketika seluruh array dimaksudkan untuk akan dilewatkan ke suatu fungsi.
4. Variabel numerik dapat dikirimkan baik ByVal atau ByRef, tergantung pada persyaratan dari fungsi