Länkar
 

Skapa HREF länkar i ditt Visual Basic projekt på följande sätt (om du ska länka en e-post adress måste du skriva exempelvis "mailto:epost@adress.se"):
 
(den här koden ska placeras i formulärets "General" del)
 

Private Declare Function ShellExecute Lib _
    "shell32.dll" Alias "ShellExecuteA" _
    (ByVal hwnd As Long, _
    ByVal lpOperation As String, _
    ByVal lpFile As String, _
    ByVal lpParameters As String, _
    ByVal lpDirectory As String, _
    ByVal nShowCmd As Long) As Long
 
Private Const SW_SHOWNORMAL = 1

Sedan kan du exempelvis skriva detta under en etikett som här:
 

Private Sub Label1_Click()
Dim lTemp As Long
lTemp = ShellExecute(Me.hwnd, _
    vbNullString, _
    "http://surf.to/myran", _
    vbNullString, _
    "c:\", _
    SW_SHOWNORMAL)
End Sub



Gör ditt program osynligt 
 

Du kan om du vill göra ditt program osynligt både för den s.k. "Taskmanagern" och Windows listen. Skriv följande kod i en modul: 
 
Public Const SW_HIDE = 0 
Public Const GW_OWNER = 4 
Declare Function GetWindow Lib "user32" Alias "GetWindow" (ByVal hwnd As _ 
Long, ByVal wCmd As Long) As Long 
Declare Function ShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd _ 
As Long, ByVal nCmdShow As Long) As Long 

Dim rc As Long 
Dim OwnerhWnd As Long 

Sedan skriver vi följande kod i start formulärets Load händelse (koden fungerar inte någon annan stans). 

'Gör formuläret osynligt. 
Me.Visible = False 
'Ta bort det från "Task Manager List". 
OwnerhWnd = GetWindow(Me.hWnd, GW_OWNER) 
rc = ShowWindow(OwnerhWnd, SW_HIDE) 



 

Skapa genvägar 

Det är ganska så enkelt att skapa genvägar i Visual Basic. Skriv följande kod i formulärets "General" del. 

Private Declare Function fCreateShellLink Lib "STKIT432.DLL" (ByVal _ 
lpstrFolderName As String, ByVal lpstrLinkName As String, ByVal _ 
lpstrLinkPath As String, ByVal lpstrLinkArgs As String) As Long 

Skriv följande kod i t.ex. en knapp. 

Sub Command1_Click() 
Dim lReturn As Long 

'Skapa genväg på skrivbordet. 
lReturn = fCreateShellLink("..\..\Skrivbord", _ 
"Kalkylatorn", "c:\windows\calc.exe", "") 

'Skapa genväg under Program i startmenyn. 
lReturn = fCreateShellLink("", "Kalkylatorn", _ 
"c:\windows\calc.exe", "") 

'Skapa en genväg i Autostart. 
lReturn = fCreateShellLink("\Autostart", "Kalkylatorn", _ 
"c:\windows\calc.exe", "") 
End Sub 



Göm mus pekaren 
 

I bl.a. skärmsläckare krävs det att man kan gömma mus pekaren, och detta är mycket lätt. Skapa en modul och skriv följande i den: 
 
Declare Function ShowCursor Lib "user32" _ 
(ByVal bShow As Long) As Long 

För att gömma muspekaren skriver man följande kod i t.ex. en knapp (för att visa den sedan byter du ut "False" mot "True"). 
 

RetFunct = ShowCursor(False) 



Avbryt avsluta 
 

Innan programmet avslutas så inträffar en händelse som heter "Query_unload" och i den så finns det en variabel som heter "Cancel". Om man ändrar det värdet till "False" så avslutas inte programmet. 
 
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) 
Cancel = False 
End Sub 
  

Notera att i det här fallet kan inte heller Windows avslutas eftersom det måste avsluta alla andra program först! Variabeln "UnloadMode" avslöjar dock vem det är som försöker avsluta ditt program. Se VB´s hjälp fil. 



Avsluta Windows (16bit) 
 

Följande exempel frågar användaren om han verkligen vill avsluta Windows. Svarar användaren ja så avslutas det. Skriv följande kod i formulärets "General" del. 
 
Declare Function ExitWindows Lib "user" (ByVal uFlags As Long, ByVal _ 
dwReserved As integer) As integer 
Const EW_REBOOTSYSTEM = &H43 
Const EW_RESTARTWINDOWS = &H42 
  

Sedan kan du skriva koden under i t.ex. en knapp. 
 
Sub Command1_Click() 

Dim iAns As Integer 
Dim rVal As Integer 
Dim iButtonType as Integer 

iButtonType = 4 + 32 ' vbYesNo + vbQuestion 

'Fråga användaren om han verkligen vill avsluta. 
iAns = MsgBox("Vill du verkligen avsluta Windows?", iButtonType, _ 
"Avsluta Windows") 
If iAns = 6 Then 'Ja svarades. 
'Starta om Windows. 
rVal = ExitWindows(EW_REBOOTSYSTEM, 0) 'EW_RESTARTWINDOWS. 
End If 

End Sub 



Avsluta Windows (32bit) 
 

I Windows 95 kan man givetvis också avsluta. Men här har du lite mer valmöjligheter än i 16 bit versionen. Skriv följande kod i formulärets "General" del. 
 
Private Declare Function ExitWindowsEx Lib "user32" _ 
(ByVal uFlags As Long, ByVal dwReserved As Long) As Long 
Private Const EWX_LOGOFF = 0 
Private Const EWX_SHUTDOWN = 1 
Private Const EWX_REBOOT = 2 
Private Const EWX_FORCE = 4 
  

Skriv nu följande kod i t.ex. en knapp. 
 
Private Sub Command1_Click() 

Dim iAns As Integer 
Dim rVal As Long 

'Fråga användaren om han verkligen vill avsluta. 
iAns = MsgBox("Vill du verkligen avsluta Windows?", vbQuestion Or _ 
vbYesNo, "Avsluta Windows") 
If iAns = vbYes Then 'Ja svarades. 
'Avsluta Windows. 
rVal = ExitWindowsEx(EWX_SHUTDOWN, 0&) 
End If  

End Sub