Cara Membuat Program VB6 - Run as Administrator
Assalamualaikum wr.wb.. selamat pagi para bloggers.. semoga semuanya dalam keadaan sehat wal afiat.. amin ^^.. kali ini saya akan membagikan cara membuat software otomatis run as administrator di vb 6.0 ..
barangkali ada yang bertanya-tanya " kenapa software yang saya buat tidak work/error di windows 7 atau 8 ? atau apakah saya harus klik kanan lalu pilih run as administrator setiap membuka software saya ? " tentu tidak...ada cara untuk membuat software kita otomatis run as administrator di vb 6.0.. berikut adalah langkah langkahnya :
Supaya aplikasi yang dibuat dengan vb6 bisa "run as administrator" atau bisa dikenali oleh UAC windows (Untuk windows vista keatas), tambahkan file manifest di dalam folder yg sama dengan aplikasi yg dimaksud. isi dari file manifestnya.. tulis script dibawah ini kedalam notepad :
Untuk run ad administrator :
Untuk run ad administrator :
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="NamaAplikasi" type="win32"/> <description>Deskripsi aplikasi</description> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> <security> <requestedPrivileges> <requestedExecutionLevel level="highestAvailable" uiAccess="false"/> </requestedPrivileges> </security> </trustInfo></assembly>
Untuk run ad administrator dan Mempercantik tampilan aplikasi :
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="SensAv Pro Antivirus" type="win32"/> <description>Deskripsi aplikasi</description> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> <security> <requestedPrivileges> <requestedExecutionLevel level="highestAvailable" uiAccess="false"/> </requestedPrivileges> </security> </trustInfo>
<dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency>
</assembly>
kemudian simpan dengan nama yang sama dengan aplikasi yg dimaksud dan beri ekstensi .MANIFEST, misalnya nama aplikasinya "CobaAja.exe", maka simpan skrip tersebut dengan nama "CobaAja.MANIFEST" dengan catatan semua file (File aplikasi dan file manifest) harus berada dalam folder yg sama.
ATAU
Hai, Sahabat Fyan..
Bertemu lagi dengan saya..
Udah lama saya gak posting karena kepentingan sekolah dan hal-hal lainnya yang mengakibatkan saya tidak bisa posting.
Pada kesempatan kali ini saya akan membahas tentang "Cara Membuat Program VB6 Run as Administrator"
Caranya:
1. Buatlah Project baru dan tambahkan textbox di dalamnya
2. Copy kode berikut ke textbox
Kode:
4. Untuk deklarasi, Copy-kan kode berikut
5. Kemudian copy kode berikut di form intialize
6. Build Aplikasi
Nah, coba dijalankan aplikasinya.
Pertama kali memang tidak bisa karena file manifestnya belum ada. Nanti, pas dijalankan untuk ke-dua kalinya baru Run as Administrator.
Bagaimana? Berhasil?
Semoga Artikel ini bermanfaat...
Bertemu lagi dengan saya..
Udah lama saya gak posting karena kepentingan sekolah dan hal-hal lainnya yang mengakibatkan saya tidak bisa posting.
Pada kesempatan kali ini saya akan membahas tentang "Cara Membuat Program VB6 Run as Administrator"
Caranya:
1. Buatlah Project baru dan tambahkan textbox di dalamnya
2. Copy kode berikut ke textbox
Kode:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>3. Di Form Load, Copy kode berikut :
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0"
processorArchitecture="X86"
name="Amzkomp"
type="win32"/>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="x86" publicKeyToken="6595b64144ccf1df" language="*" />
</dependentAssembly>
</dependency>
<description>Protect your data</description>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="highestAvailable" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
Kode::
If Dir(App.Path & "\" & App.EXEName & ".exe.manifest") = "" Then
Open App.Path & "\" & App.EXEName & ".exe.manifest" For Output As #1
Print #1, Text1.Text
Close #1
End If
Open App.Path & "\" & App.EXEName & ".exe.manifest" For Output As #1
Print #1, Text1.Text
Close #1
End If
Kode::
Private Declare Function InitCommonControls Lib "comctl32.dll" () As Long
Kode::
InitCommonControls
Nah, coba dijalankan aplikasinya.
Pertama kali memang tidak bisa karena file manifestnya belum ada. Nanti, pas dijalankan untuk ke-dua kalinya baru Run as Administrator.
Bagaimana? Berhasil?
Semoga Artikel ini bermanfaat...
ATAU
Anda perlu menggunakan API untuk menentukan apakah pengguna saat ini memiliki hak administratif atau tidak.
Untungnya, ada satu fungsi yang kembali
0
untuk False
menunjukkan status pengguna saat ini. Yaitu: IsUserAnAdmin
Berikut ini cara mendeklarasikan dan menggunakannya:
'In a module file:
Public Declare Function IsUserAnAdmin Lib "Shell32" Alias "#680" () As Integer
Lalu di
Form_Load()
Sub Form_Load()
If IsUserAnAdmin() = 0 Then
MsgBox "Not admin"
Else
MsgBox "Admin"
End If
End Sub
Catatan : Fungsi Shell
IsUserAnAdmin
dihilangkan . Anda dapat mengganti fungsionalitas dengan sesuatu seperti ( pseudocode ):Boolean IsUserAdmin()
{
PSID administratorsGroup = StringToSid("S-1-5-32-544"); //well-known Administrators group
Boolean isAdmin;
if (not CheckTokenMembership(0, administratorsGroup, out isAdmin) then
isAdmin = false;
FreeSid(administratorsGroup);
return isAdmin;
}
Komentar
Posting Komentar