begin process at 2012 02 14 20:58:18
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

API

 > 

Appel d'API en VB.NET : Plantage


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Appel d'API en VB.NET : Plantage

lundi 17 avril 2006 à 11:58:33 | Appel d'API en VB.NET : Plantage

venka

Bonjour,

J'ai commencé à migrer un projet VB 6.0 sous VB.NET mais je suis rapidement tombé sur un os avec mes appels d'API.
En l'occurence, le problème se pose lorsque j'essaie d'appeler la fonction GetLogicalDriveStrings qui prend un paramètre String. La fonction est censée remplir la variable string mais VB.NET me renvoie une erreur disant qu'il y a eu tentative d'accès à un espace mémoire protégé. Je suppose donc que la variable de type string doit être déclarée et passée d'une façon différente à ce qui se faisait sous VB 6. Cet aspect est très mal documenté sur MSDN et je ne trouve pas la solution.

Le bout de code incriminé est le suivant :

Dim lsBuffer As String
Dim llLength As
Long
llLength = 256
lsBuffer =
New String(vbNullChar, llLength)
llReturn = GetLogicalDriveStrings(llLength, lsBuffer)

Si quelqu'un peut me dépanner ou m'aiguiller
Merci d'avance
Venka
lundi 17 avril 2006 à 12:25:17 | Re : Appel d'API en VB.NET : Plantage

Willi

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Salut,
Tu peut remplacer cette fonction de l'api par simplement

Dim MesLecteurs as string()=System.IO.Directory.GetLogicalDriveStrings()
mardi 18 avril 2006 à 00:25:02 | Re : Appel d'API en VB.NET : Plantage

venka

Mille Merci Willi,
C'est exactement ce qu'il me fallait. Sauf que le nom exact de la méthode est System.IO.Directory.
GetLogicalDrives qui assure le même rôle que la fonction GetLogicalDriveStrings de l'API Windows (GetLogicalDriveStrings" n'est pas reconnu comme membre ou méthode de "System.IO.Directory).
Après j'ai galéré un peu pour essayer d'utiliser une autre API qui renvoyait le nom du volume (GetVolumeInformation) et puis finalement j'ai fini par trouver la classe
DriveInfo et sa méthode GetDrives() qui renvoie un tableau de structures avec toutes les infos détaillées de tous les lecteurs du système.
Comme quoi, en cherchant bien, on devrait trouver toutes les solutions de remplacement des fonctions de l'API Windows.
Encore merci.
Venka


Cette discussion est classée dans : net, vb, string, api, lllength


Répondre à ce message

Sujets en rapport avec ce message

API CreateProcess [ par ShanaBurns ] Bonjour,Je voudrais utiliser l'api CreateProcess mais sous Vb.net, mais le type Any ne fonctionne plus sous cette version et je ne vois pas trop comme pointeur sur string en vb.net [ par sebaznar ] Comment fait-on pour déclarer un pointeur sur un string en vb.net ??????????? String * 3 en vb.net [ par SupraDolph ] Je cherche un equivalent de :Dim txt As String * 3en vb.netMerci de m'aideramicalement SupraDolph bloquer clavier vb.net [ par scortex84 ] Quelqu'un sait-il comment bloquer le clavier en vb .net (dans le but de bloquer les touches systemes) ? Uniquement le clavier, la souris doit rester d Conversion d'un String en VB.net en Char* en C++.net [ par didiou ] salut tout le monde!J'ai un petit probleme sur lequel je galere depuis 2 jours:J'ai developpé une dll en C++.net qui comporte une fonction ayant pour PB.Print "string" en VB.net [ par SupraDolph ] Tout d'abord bonjour,je désirerai trouver l'équivalent dePictureBox.Print "string"qui est du VB6 en VisualBasic.NET.j'ai trouver une methode qui consi excel & vb.net [ par chambou ] Voila, je voudrais que dans un tableau excel deja rempli, a partir de mon programme vb, je puisse rechercher un string dans une des colonnes du tablea VB.NET et Lotus Notes API [ par borntoclimb ] Si quelqu'un a deja codé une appli ou DLL en .Net se connectant aux API Lotus Notes, je suis prenneur d'un code d'example.Merci,Borntoclimb---No pasa [VB.NET] Decoupage de string/Split etc [ par jajapremier ] bonjour,j'attaque directj'ai une string de ce type:MU0 6.60e+04 /*MPa.Ma*/(les espace sont deux tabulation)en fait e voudrais recuperer pb avec l'API WNetAddConnection2 [ par EPS32HAY ] Bonjour à tous,J'utilise l'API suivante afin de me connecter à un lecteur réseau [vb]Private Declare Function WNetAddConnection2 Lib "mpr.dll" Alias "


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales