Avatar billede emileej Nybegynder
21. september 2000 - 09:16 Der er 14 kommentarer og
2 løsninger

Hurtigt! Hjælp til minibrowser i MS Visual C++

Jeg har oprettet en minibrowser v.h.a Visual C++ MFC Wizard. Nu vil jeg gerne ha\' den til, at loade en fil fra min harddisk, i stedet for fra nettet, så jeg skriver :

\'Navigate2(_T(\"file://start.html\"),NULL,NULL);\'

Minibrowseren kommer tilege, og siger, at den ikke kan finde filen. Hjælp mig! Jeg skal bruge hjælp inden 14:00, hvor opgaven, som browseren er en del af, skal afleveres.


E-(mil
Avatar billede borrisholt Novice
21. september 2000 - 09:19 #1
har du prøver at angive fulle path til din fil ...
Avatar billede emileej Nybegynder
21. september 2000 - 09:24 #2
Jeg skal ha\' browsern til, at ligge på en CD-ROM, så jeg kender derfor ikke den fulde Path.

E-(mil
Avatar billede borrisholt Novice
21. september 2000 - 09:28 #3
Joeee det gør du ! Du kender den relative path i forhold til din EXE fil right ?

med proceduren GetCommandLine() kan du få at vide hvor din exe fil ligger og der fra beregne hvor din html fil ligger ...

Jens B
Avatar billede borrisholt Novice
21. september 2000 - 09:30 #4
men inden du hisser dig op til en gel masse så prøv først lige at hard code den absolutte path til din htmlfol hvor den ligger nu .. og se om det virker

Jens B
Avatar billede powell Nybegynder
21. september 2000 - 09:32 #5
Hvad indeholder file?
Avatar billede soepro Nybegynder
21. september 2000 - 09:47 #6
Du beder om at få din \"file\" direkte fra current directory på current drive - det vil formentlig sige din CD-ROM. Du skal angive BÅDE driver OG path, for at det vil kunne virke:

\'Navigate2(_T(\"file://c:/mydir/mysub/start.html\"),NULL,NULL);\'
Avatar billede emileej Nybegynder
21. september 2000 - 09:54 #7
Jeg får en \"undeclared identifier\" - fejl, når jeg prøver at bruge \'getcwd()\'!?
Avatar billede emileej Nybegynder
21. september 2000 - 09:56 #8
Hvilken heder fil ligger \'getcwd()\' i? (Jeg har ikke MSDN installeret)
Avatar billede borrisholt Novice
21. september 2000 - 10:08 #9
getcwd() ligger i <direct.h>  med den skal du ikke bruge ..
Avatar billede emileej Nybegynder
21. september 2000 - 10:09 #10
Hva\' skal jeg så bruge???
Avatar billede borrisholt Novice
21. september 2000 - 10:17 #11
du skal bruge GetCommandLine() den retunerer den fulde path på din exe fil !
Fra den skal du slette den første karekter i det det er et \" ud over det kan du bruge den følgende funktion til at få fat i pathen :

#include <mbstring.h>
#include <windows.h>
#include  <stdio.h>

char * ExtractFilePath(char * FileName)
{
  char *lastpos = strrchr( FileName, 92 );
  int pos = ((int)lastpos - (int)FileName)/sizeof(char);
  FileName[pos+1] = \'\\0\';
  return FileName;
}


Jens B
Avatar billede borrisholt Novice
21. september 2000 - 10:23 #12
virker det hvis du angiver den fulde path ?
Avatar billede emileej Nybegynder
21. september 2000 - 10:35 #13
Det virker med den fulde path, men hvordan ligger jeg en streng, der indeholder filnavnet til strengen, der indeholder path\'en?

E-|mil
Avatar billede borrisholt Novice
21. september 2000 - 10:51 #14
Kig lidt på det her :

#include <mbstring.h>
#include <windows.h>
#include  <stdio.h>


char * ExtractFilePath(char * FileName)
{
  char *lastpos = strrchr( FileName, 92 );
  int pos = ((int)lastpos - (int)FileName)/sizeof(char);
  FileName[pos+1] = \'\\0\';
  return FileName;
}

char * ExePath(char *buffer)
{
    strcpy(buffer,GetCommandLine());
    char *lastpos = &buffer[1];

    strcpy(buffer,lastpos);
   
    buffer[strlen( buffer )-1]=\'\\0\';
    return  buffer;
}

void main()
{
    char buffer[_MAX_PATH];
    printf(\"buffer %s\\n\",ExePath(buffer));
    ExtractFilePath(buffer);
    printf(\"buffer %s\\n\",buffer);
    strcat( buffer, \"index.html\");
    printf(\"buffer %s\\n\",buffer);
   
}

Jens B
Avatar billede borrisholt Novice
21. september 2000 - 11:01 #15
jfr. spørgsmål http://www.eksperten.dk/spm/25331 skal du lige huske at acceptere/afvise de svar du får ..

jens B
Avatar billede emileej Nybegynder
21. september 2000 - 11:06 #16
Tak gutter!

I har reddet min dag (og min projektopgave)!

E-)mil
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester