Ho trovato anche quest'API che consente ulteriori collegamenti (provato su Win_XP e VB6 esegue un collegamento con la Calcolatrice):
codice:
Private Declare Function fCreateShellLink Lib "vb6stkit.dll" (ByVal lpstrFolderName As String, ByVal lpstrLinkName As String, ByVal lpstrLinkPath As String, ByVal lpstrLinkArguments As String, ByVal fPrivate As Long, ByVal sParent As String) As Long
Private Sub Form_Load()
Dim strGroupName As String, strLinkName As String
Dim strLinkPath As String, strLinkArguments As String
Dim fPrivate As Boolean, sParent As String
Dim fSuccess As Boolean
strLinkName = "Collegamento con Calcolatrice"
strLinkPath = "C:\WINDOWS\system32\calc.exe"
strLinkArguments = ""
' Aggiunge il collegamento al Desktop:
fPrivate = True
strGroupName = "..\..\Desktop"
sParent = "$(Programs)"
fSuccess = fCreateShellLink(strGroupName & vbNullChar, strLinkName, strLinkPath, strLinkArguments & vbNullChar, fPrivate, sParent)
'the path should never be enclosed in double quotes
If fSuccess Then
MsgBox "Creato il collegamento col desktop"
Else
MsgBox "Impossibile creare il collegamento col desktop"
End If
' ' Add shortcut to Programs menu.
' strGroupName = "$(Programs)"
' sParent = "$(Programs)"
' fSuccess = fCreateShellLink(strGroupName & vbNullChar, strLinkName, strLinkPath, strLinkArguments & vbNullChar, fPrivate, sParent)
' 'the path should never be enclosed in double quotes
' If fSuccess Then
' MsgBox "Created shortcut on Programs menu"
' Else
' MsgBox "Unable to create shortcut on Programs menu"
' End If
' ' Add shortcut to Startup folder of Programs menu.
' strGroupName = "Startup"
' sParent = "$(Programs)"
' fSuccess = fCreateShellLink(strGroupName & vbNullChar, strLinkName, strLinkPath, strLinkArguments & vbNullChar, fPrivate, sParent)
' 'the path should never be enclosed in double quotes
' If fSuccess Then
' MsgBox "Created shortcut in Startup folder"
' Else
' MsgBox "Unable to create shortcut in Startup folder"
' End If
End Sub
A mia volta vorrei sapere se c'è modo di controllare se sul desktop è già stato creato il collegamento al programma e quindi evitare di ripetere l'operazione.