ShellExecute a déséquilibré la pile [Résolu]

DevDragon 51 Messages postés mercredi 22 septembre 2004Date d'inscription 10 mars 2008 Dernière intervention - 19 avril 2007 à 11:05 - Dernière réponse : mortalino 6812 Messages postés vendredi 16 décembre 2005Date d'inscription 21 décembre 2011 Dernière intervention
- 19 avril 2007 à 13:04
Bonjour à tous,

J'ai un gros souci pour imprimer un fichier pdf, je m'explique

J'ai un dossier contenant pret de 700 fichier pdf

Mon but et de les imprimer dans l'ordre

le probleme et qu'à la génération du code un message met retourné :

Un appel à la fonction PInvoke 'Bilan!Bilan.Form1::ShellExecute' a déséquilibré la pile. Cela peut se produire, car la signature PInvoke managée ne correspond pas à la signature cible non managée. Vérifiez que la convention d'appel et les paramètres de la signature PInvoke correspondent à la signature non managée cible.

Voici mon code

' APIs

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
Sub Form1_Load(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles
MyBase.Load

'test impression

' Fonction

Dim retour
As
Longretour = ShellExecute(

Me.Handle,
"print",
"I:\_Archives_pdf\_Bilan_RFA\2006\BilanATO0023.pdf",
"", vbNullString, 0)

End
SubPourriez vous m'aider car c'est trés bloquant et urgent

Merci beaucoup pour votre aide

Youpitralalalalere
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
drikce06 2247 Messages postés lundi 29 mai 2006Date d'inscription 29 mai 2008 Dernière intervention - 19 avril 2007 à 11:12
3
Merci
Salut en .Net pour les API remplacer les Long par des Integer! Essaye déjà ça!

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:

Merci drikce06 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de drikce06
Meilleure réponse
cs_casy 7745 Messages postés mercredi 1 septembre 2004Date d'inscription 24 septembre 2014 Dernière intervention - 19 avril 2007 à 11:15
3
Merci
Toujours le même problème de décalrations des API avec .Net

Long (api, vb6) = Integer (.Net)

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #

Merci cs_casy 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de cs_casy
Meilleure réponse
DevDragon 51 Messages postés mercredi 22 septembre 2004Date d'inscription 10 mars 2008 Dernière intervention - 19 avril 2007 à 12:05
3
Merci
Merci merci merci merci merci et ... merci

Ca marche torp bien en effet c'est bien tout les long à changer en integer

@ bientôt

Youpitralalalalere

Merci DevDragon 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de DevDragon
mortalino 6812 Messages postés vendredi 16 décembre 2005Date d'inscription 21 décembre 2011 Dernière intervention - 19 avril 2007 à 13:04
0
Merci
Salut,

en DotNet, ShellExecute n'a t-il pas d'équivalent dans le framework ?
( System.Diagnostics.Process )

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
  
Commenter la réponse de mortalino

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.