Vider Corbeille [Résolu]

Signaler
Messages postés
551
Date d'inscription
samedi 8 janvier 2005
Statut
Membre
Dernière intervention
12 avril 2008
-
Messages postés
551
Date d'inscription
samedi 8 janvier 2005
Statut
Membre
Dernière intervention
12 avril 2008
-
Bonjour,

J'aimerais vider la corbeille en Visual Basic .NET 2005 comment faire ?

Voici un code VB6 que j'ai récupéré mais inutilisable ...

<li>PrivateDeclareFunction SHEmptyRecycleBin Lib "shell32.dll" Alias "SHEmptyRecycleBinA" (ByVal hwnd AsLong, ByVal pszRootPath AsString, ByVal dwFlags AsLong) AsLong
</li><li>PrivateDeclareFunction SHUpdateRecycleBinIcon Lib "shell32.dll" () AsLong
</li><li>
</li><li>PrivateSub Form_Load()
</li><li>'La vide
</li><li>SHEmptyRecycleBin Me.hwnd, vbNullString, 0
</li><li>'La met à jour
</li><li>SHUpdateRecycleBinIcon
</li><li>EndSub
</li>voilà si quelqu'un peut m'aider
merci d'avance

7 réponses

Messages postés
551
Date d'inscription
samedi 8 janvier 2005
Statut
Membre
Dernière intervention
12 avril 2008
1
je viens de trouver !

SHEmptyRecycleBin(

Me.Handle.ToInt32, vbNullString, 1)SHUpdateRecycleBinIcon()

voilà merci à tous d'avoir essayer, merci !
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
J'ai mis en rouge quelque chose qui doit être corrigé à double titre (après avoir vu le type retourné par les fonctions sous VN.Net, que je ne connais pourtant pas !!!...)


 


<li>
Private
Declare
Function SHEmptyRecycleBin Lib "shell32.dll" Alias "SHEmptyRecycleBinA" (ByVal hwnd AsLong, ByVal pszRootPath AsString, ByVal dwFlags AsLong) AsLong
</li>
<li>
Private
Declare
Function SHUpdateRecycleBinIcon Lib "shell32.dll" ()AsLong
</li>
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Et je vois que tu sautes pas mal d'espaces ! (Astoto, non ! As toto ? oui)
Messages postés
551
Date d'inscription
samedi 8 janvier 2005
Statut
Membre
Dernière intervention
12 avril 2008
1
l'erreur n'est pas là ... : c'est dans le "Me.hwnd" qui n'existe pas en VB.net ...

si quelqu'un aurait autre chose à proposé ...
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Le hwnd est un handle et existe à ma connaissance sous vb.net !
Le Me est ta form !


Quand à Me.hwnd, ma foi, je ne vois pas où est ton problème ...


Surtout après avoir vu par exemple ceci, sur un site en VB.Net :



Declare Auto Function MBox Lib "user32.dll" _
Alias "MessageBox" (ByVal hWnd As Integer, _
ByVal txt As String, ByVal caption As String, _
ByVal Typ As Integer) As Integer
SetLayeredWindowAttributes Me.hWnd, RGB(200, 0, 200), 128, LWA_COLORKEY 'Or LWA_ALPHA

Je t'ai pourtant invité à vérifier tes types (dont je sais qu'il ne sont pas les mêmes sous VB6 (long) et VB.Net (Integer))
Mais c'est toi qui a en main une aide en ligne VB.Net !... pas moi... et pourtant !...
Messages postés
551
Date d'inscription
samedi 8 janvier 2005
Statut
Membre
Dernière intervention
12 avril 2008
1
si Me.hwnd existe, pourquoi n'es-tu pas capable de résoudre mon problème ?

(Me renvoit à la présente Form : oui c'est vrai ... )

++
Messages postés
1812
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
26 octobre 2010
1