VB6 et VB 2005

[Résolu]
Signaler
Messages postés
91
Date d'inscription
mardi 8 avril 2003
Statut
Membre
Dernière intervention
15 mars 2013
-
Messages postés
91
Date d'inscription
mardi 8 avril 2003
Statut
Membre
Dernière intervention
15 mars 2013
-
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

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
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
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 112 internautes nous ont dit merci ce mois-ci

Messages postés
91
Date d'inscription
mardi 8 avril 2003
Statut
Membre
Dernière intervention
15 mars 2013

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