begin process at 2012 02 11 06:20:06
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

Recuperation d'une chaine de caractère en parametre


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

Recuperation d'une chaine de caractère en parametre

lundi 30 octobre 2006 à 15:58:47 | Recuperation d'une chaine de caractère en parametre

Crazyblood

Bonjour,
Je suis en train de developpé une DLL pour créer une procedure stockée etendu sous SQL server,
je passe dans cette procedure un certain nombre de parametre dont l'un est un path ; je verifie donc si le path est bon le problème est que lorsque que je recupère mon paramètre, des caractères bizare sont ajoutés à la fin de mon path donc forcement le chemin n'est pas trouvé et une erreur m'est retournée.
Je débute en C++ et je ne sais donc pas trop comment m'y prendre pour ne récupérer que le path sans le reste derriere.

srv_paraminfo(pSrvProc, 3, &bType, &cbMaxLen, &cbActualLen, NULL, &fNull);

//Create some memory to get the parameter in to

BYTE* Data =

new BYTE[cbActualLen];

memset(Data, '\0', cbActualLen);

//Get the parameter

srv_paraminfo(pSrvProc, 3, &bType, &cbMaxLen, &cbActualLen, Data, &fNull);

//Verification de l'adresse

if( (_access((char*)&Data,0)) == -1)

{

//LE chemin n'existe pas

printError(pSrvProc, (

char*)Data);

printError (pSrvProc, "srv_paraminfo failed... path not found");

return(XP_INCORECT_PARAMETERS);

}

et lorsque je donne en 3eme parametre par exemple  'C:\Application' il me retourne C:\Applicationetpleindecaracterebizare

lundi 30 octobre 2006 à 16:42:50 | Re : Recuperation d'une chaine de caractère en parametre

Renfield

Administrateur CodeS-SourceS

ajoutes un \0

"C:\Application\0"

Renfield
Admin CodeS-SourceS- MVP Visual Basic
lundi 30 octobre 2006 à 16:52:44 | Re : Recuperation d'une chaine de caractère en parametre

SAKingdom

Membre Club
Ben normalement, quand tu entre une chaine en paramètre comme suit:
fonction("mon texte");

Le 0 final est ajouté automatiquement.
Comment entre tu la chaine. Comme ça?

fontion(.., ..., "C:\Application", .......); ?

Si oui, ton problème est là. La solution est:
fontion(.., ..., "C:\\Application", .......);
ou
fontion(.., ..., "C:/Application", .......);

C++ (@++)

lundi 30 octobre 2006 à 17:00:59 | Re : Recuperation d'une chaine de caractère en parametre

Crazyblood

j'ai essayé avec '\0' ca ne fonctionne pas.

En fait il s'agit d'une procedure stockée sous SQL Server donc mes parametres sont rentrés de cette façon :

exec

master..xp_ma_proc_stockée_étendue 'param1','param2','C:\Application', 'param4' ......
mardi 31 octobre 2006 à 08:54:15 | Re : Recuperation d'une chaine de caractère en parametre

Crazyblood

Ce n'est pas non plus un pb de caractere d'echappement ; voila ce que j'obtient quanje recupere ma variable : C:\ApplicationÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍýýýý
mardi 31 octobre 2006 à 09:10:21 | Re : Recuperation d'une chaine de caractère en parametre

Renfield

Administrateur CodeS-SourceS

ton cbActualLen serait pas erroné ?

Renfield
Admin CodeS-SourceS- MVP Visual Basic
mardi 31 octobre 2006 à 09:59:10 | Re : Recuperation d'une chaine de caractère en parametre

Crazyblood

mon cbActualLen vient de là : srv_paraminfo(pSrvProc, 3, &bType, &cbMaxLen, &cbActualLen, Data, &fNull);
samedi 25 octobre 2008 à 15:28:26 | Re : Recuperation d'une chaine de caractère en parametre

asmahane24

Bonjour;

j'ai ecri une dll en dev c++ et je cherche a l'utiliser comme procedure stockées etendu sur sql server 7, je voudrai savoir ma dll doit etre ecrite d'une maniere specifique a cette utilisation et comment se fait l'appel de fonction de cette DLL avec sql server.

Merci de m'aider.


Cette discussion est classée dans : data, parametre, path, psrvproc, cbactuallen


Répondre à ce message

Sujets en rapport avec ce message

problème avec la transmission de charactères via ODBC [ par suzane ] Salut!j'utilise ODBC driver pour me connecte a une base de données, je veux donc stocké des chaînes de caractères en Arabe,alors je doit désactivé l'o API qui recupere son propre path [ par NetCommando ] je veux savoir comment une API recupere son prapre pathdu genre c:\app.exe , pour une aplication nomé "app"merci fichier tasm32.exe [ par Heero ] Salutj' utilise bcc55 pour compilermais j' ai besoin pour mon prog d' utiliser le parametre de compilation assembleur mais ce parametre necessite le f Pb avec une fonction windows... [ par Steak ] j'ai un petit probleme avec la fonction NT UpdateResource... voila ce que dit le sdk win32 : BOOL UpdateResource( HANDLE hUpdate, // update-file handl Pointeur sur methodes avec parametre [ par Kinamstrong ] Salut a toi,Je cherche à savoir comment marche les pointeurs sur les methodes avec parametres.Qu'est ce qui va differencier deux meme methodes en cour ouverture de fichier de texture en .BMP [ par steph76 ] voila je developement en ce moment mon moteur3d pour 1 jeux.Le probleme c'est la fonction d'ouverture de fichier.BMP. Elle fonctionne trés bien sur la Lire un INI en Turbo C++/dos [ par Alextophi ] Comment puis-je lire un fichier INI sous dos en C++ avec Turbo C++.[SECTION1]x = data[SECTION2]x = dataetc.d'avance Mercichristophe Microsoft CException [ par julok2 ] Salut,à l'exécution de mon programme (MFC avec VC++6), j'obtiens le message d'erreur suivant:Data.exe(KERNELL32.DLL) : 0xE06D7363 : Microsoft C++ Exce CDatabase::Open() [ par julok2 ] Bonjour à tous,déjà je suis désolé d'envoyer autant de messages sur le forum mais j'ai beaucoup de mal à me documenter correctement sur ODBC avec les CDatabase::Open() [ par julok2 ] Bonjour à tous,déjà je suis désolé d'envoyer autant de messages sur le forum mais j'ai beaucoup de mal à me documenter correctement sur ODBC avec les


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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 : 1,420 sec (3)

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