VB6 et VB 2005

Résolu
LUSTRUCRU Messages postés 91 Date d'inscription mardi 8 avril 2003 Statut Membre Dernière intervention 15 mars 2013 - 22 déc. 2005 à 10:09
LUSTRUCRU Messages postés 91 Date d'inscription mardi 8 avril 2003 Statut Membre Dernière intervention 15 mars 2013 - 22 déc. 2005 à 11:43
Bonjour,

Dans une petite application en VB6 (qui fonctionne) j'utilise cette ligne de commande permettant d'ouvrir n'importe quel document (merci NIX) :

Private Declare Function SendMessage Lib "User32"Alias "SendMessageA"(ByVal hWnd As Integer, ByVal wMsg As Short, ByVal wParam As Short, ByRef lParam As Any) As Integer

et voici ce que me renvoie VB2005 quand le tente d'ouvrir mon appli

'UPGRADE_ISSUE: Declaring a parameter 'As Any' is not supported.

Je suis perdu,
Merci à ceux qui voudront bien se pencher sur mon problème

2 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
22 déc. 2005 à 10:49
SendMessage ouvre un document ???

Le 4eme param est normalement un 32 bits sur win32 donc Short en vb.net.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
3
LUSTRUCRU Messages postés 91 Date d'inscription mardi 8 avril 2003 Statut Membre Dernière intervention 15 mars 2013
22 déc. 2005 à 11:43
Merci
C'est tout Bon
(sans cette ligne j'arrivais à ouvrir mon document Word mais cela ramait)

Le code complet donné par Nix et modifié pour fonctionner avec VB2005 :

Option Explicite
Private Declare Function ShellExecute Lib "shell32.dll"Alias "ShellExecuteA"(ByVal hWnd As Integer, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Integer) As Integer






Private Declare Function SendMessage Lib "User32" Alias "SendMessageA" (ByVal hWnd As Integer, ByVal wMsg As Short, ByVal wParam As Short, ByRef lParam As Short) As Integer


Const LB_FINDSTRING As Short = &H18Fs


Dim i As Short


___________________________________________________________________


Public Sub OuvrirDocument()


Dim Retour As Integer


Dim Document As String


Dim Nom As Object


Nom = Text2.Text


Document = "C:\Documents and Settings\jean francois\Mdocuments\ & Nom & ".doc"


Retour = ShellExecute(Me.Handle.ToInt32, vbNullString, Document, "", vbNullString, 1)


End Sub
Jean François
0
Rejoignez-nous