/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
Upload fra local app
Fra : Johan


Dato : 13-08-01 10:26

Hej folkens

Jeg har et spørgsmål, som jeg håber nogle kan vejlede mig lidt med.

Jeg står overfor at skulle lave en applikation som brugeren skal downloade.
Gennem dette billede skal det så være muligt for brugeren at uploade en fil
fra den personens harddisk.

Er der nogle der kan vejlede mig lidt om, hvor ledes jeg gør dette? Altså
brugeren skal uploade en lokal fil til en webserver.

MEGET gerne artikler eller ligende..

mvh

Johan



 
 
Benny Andersen (13-08-2001)
Kommentar
Fra : Benny Andersen


Dato : 13-08-01 21:48

On Mon, 13 Aug 2001 11:25:38 +0200, "Johan" <tcr480@ofir.dk> wrote:

>Hej folkens
>
>Jeg har et spørgsmål, som jeg håber nogle kan vejlede mig lidt med.
>
>Jeg står overfor at skulle lave en applikation som brugeren skal downloade.
>Gennem dette billede skal det så være muligt for brugeren at uploade en fil
>fra den personens harddisk.
>
>Er der nogle der kan vejlede mig lidt om, hvor ledes jeg gør dette? Altså
>brugeren skal uploade en lokal fil til en webserver.
>
>MEGET gerne artikler eller ligende..
>
>mvh
>
>Johan
>
I html ser det som får browseren til at udføre lidt af ovenænte,
således ud:
<html><body>
<form "http://somesite.com/somefile" method="post"
enctype="multipart/form-data">
<input type=file>opload picture
<INPUT type="submit" value="Send">
</form>
</body></html>


Kent Friis (13-08-2001)
Kommentar
Fra : Kent Friis


Dato : 13-08-01 21:20

Den Mon, 13 Aug 2001 20:48:02 GMT skrev Benny Andersen:
>On Mon, 13 Aug 2001 11:25:38 +0200, "Johan" <tcr480@ofir.dk> wrote:
>
>>Hej folkens
>>
>>Jeg har et spørgsmål, som jeg håber nogle kan vejlede mig lidt med.
>>
>>Jeg står overfor at skulle lave en applikation som brugeren skal downloade.
>>Gennem dette billede skal det så være muligt for brugeren at uploade en fil
>>fra den personens harddisk.
>>
>>Er der nogle der kan vejlede mig lidt om, hvor ledes jeg gør dette? Altså
>>brugeren skal uploade en lokal fil til en webserver.
>>
>>MEGET gerne artikler eller ligende..
>>
>>mvh
>>
>>Johan
>>
>I html ser det som får browseren til at udføre lidt af ovenænte,
>således ud:
><html><body>
><form "http://somesite.com/somefile" method="post"
>enctype="multipart/form-data">
><input type=file>opload picture
><INPUT type="submit" value="Send">
></form>
></body></html>

Er det ikke overkill at skulle integrere en browser i applikationen,
blot for at kunne uploade?

Mvh
Kent
--
"Handlingen blev afbrudt pga. computerens begrænsede effekt"
- Windows NT på en Pentium III 550 MHz

Johan Holst Nielsen (14-08-2001)
Kommentar
Fra : Johan Holst Nielsen


Dato : 14-08-01 10:45

>>I html ser det som får browseren til at udføre lidt af ovenænte,
>>således ud:
>><html><body>
>><form "http://somesite.com/somefile" method="post"
>>enctype="multipart/form-data">
>><input type=file>opload picture
>><INPUT type="submit" value="Send">
>></form>
>></body></html>
>
> Er det ikke overkill at skulle integrere en browser i applikationen,
> blot for at kunne uploade?

Jo, jeg var sådan mest ude efter noget direkte app. Håber ikke at det er
nødvendig at integrere en browser i applikationen. Den skal gerne fylde så
lidt som muligt, og derfor vil jeg helst undgå at skulle integrere en
browser for at køre upload.

Er det ikke muligt at lave en slags socket åbning, hvor jeg kan køre filens
data igennem, således jeg ikke skal køre den gennem browser app.

Nogle der kan give lidt source code hvordan det eventuelt kan lade sig gøre


mvh

Johan

Martin Schultz (14-08-2001)
Kommentar
Fra : Martin Schultz


Dato : 14-08-01 11:51

On Tue, 14 Aug 2001 11:45:11 +0200, Johan Holst Nielsen
<tcr480@ofir.dk> wrote:

>Jo, jeg var sådan mest ude efter noget direkte app. Håber ikke at det er
>nødvendig at integrere en browser i applikationen. Den skal gerne fylde så
>lidt som muligt, og derfor vil jeg helst undgå at skulle integrere en
>browser for at køre upload.
>
>Er det ikke muligt at lave en slags socket åbning, hvor jeg kan køre filens
>data igennem, således jeg ikke skal køre den gennem browser app.
>
>Nogle der kan give lidt source code hvordan det eventuelt kan lade sig gøre
Jeg tror det nemmeste er at indbygge noget ftp. Jeg har ikke lige
nogle henvisning men med mange udviklingsværktøjer følger der noget
eksempel kode med hvor der er et ftp program.

Klaus Hebsgaard (14-08-2001)
Kommentar
Fra : Klaus Hebsgaard


Dato : 14-08-01 13:11


> Jo, jeg var sådan mest ude efter noget direkte app. Håber ikke at det er
> nødvendig at integrere en browser i applikationen. Den skal gerne fylde så
> lidt som muligt, og derfor vil jeg helst undgå at skulle integrere en
> browser for at køre upload.
>
> Er det ikke muligt at lave en slags socket åbning, hvor jeg kan køre
filens
> data igennem, således jeg ikke skal køre den gennem browser app.

Hvis du vil lave noget socket halløj, skal du vel lave et program der lytter
på den rigtige port på serveren.

Hvis du allerede har en http eller ftp server kørene på serveren, er det vel
nemmest at lave en http eller ftp forbindelse til den.
Dette kan gøres med et tredjeparts tool, eks sockettools library, jeg har
brugt deres smtp implementation - den virkede fint.

MVH

Klaus Hebsgaard



Kent Friis (14-08-2001)
Kommentar
Fra : Kent Friis


Dato : 14-08-01 18:54

Den Tue, 14 Aug 2001 14:11:18 +0200 skrev Klaus Hebsgaard:
>
>> Jo, jeg var sådan mest ude efter noget direkte app. Håber ikke at det er
>> nødvendig at integrere en browser i applikationen. Den skal gerne fylde så
>> lidt som muligt, og derfor vil jeg helst undgå at skulle integrere en
>> browser for at køre upload.
>>
>> Er det ikke muligt at lave en slags socket åbning, hvor jeg kan køre
>filens
>> data igennem, således jeg ikke skal køre den gennem browser app.
>
>Hvis du vil lave noget socket halløj, skal du vel lave et program der lytter
>på den rigtige port på serveren.

Under linux har jeg før lavet hokuspokus med at putte et simpelt script
i /etc/inetd.conf, og så lade inetd åbne socket-forbindelsen

>Hvis du allerede har en http eller ftp server kørene på serveren, er det vel
>nemmest at lave en http eller ftp forbindelse til den.
>Dette kan gøres med et tredjeparts tool, eks sockettools library, jeg har
>brugt deres smtp implementation - den virkede fint.

http og ftp virker også lidt som overkill - begge protokoller er ret
komplicerede (ftp er dog den værste).

Mvh
Kent
--
Hvis man ikke kan lide klassisk musik, er det sandsynligvis fordi
lydkvaliteten er for dårlig. Klassisk musik kræver et godt anlæg.

Benny Andersen (14-08-2001)
Kommentar
Fra : Benny Andersen


Dato : 14-08-01 21:07

On Tue, 14 Aug 2001 11:45:11 +0200, Johan Holst Nielsen
<tcr480@ofir.dk> wrote:

>>>I html ser det som får browseren til at udføre lidt af ovenænte,
>>>således ud:
>>><html><body>
>>><form "http://somesite.com/somefile" method="post"
>>>enctype="multipart/form-data">
>>><input type=file>opload picture
>>><INPUT type="submit" value="Send">
>>></form>
>>></body></html>
>>
>> Er det ikke overkill at skulle integrere en browser i applikationen,
>> blot for at kunne uploade?
Hvem har snakket om at anvende en browser? Mit eksempel var for at
antyde en html protolkol som kan gøre det, og der efterspørges netop
opload til webserver. Desuden spørges der efter referencer og html
koden er en indgangs vinkel til at søge f.eks på w3c.
Der nævnes intet om udvikling/anvendelse platform. i visual c++ kan
f.eks. MFC's CInternetSession klasse bruges dertil. Hvis VC 6.0 er din
compiler så lur MSDN 'tear' sample.
[KLIP]

Carsten Svaneborg (16-08-2001)
Kommentar
Fra : Carsten Svaneborg


Dato : 16-08-01 22:06

Johan Holst Nielsen wrote:
> Jo, jeg var sådan mest ude efter noget direkte app.

Prøv at lave en dummy .cgi script der modtager en file upload og
se hvordan det ser ud.

#!/bin/bash
#test.cgi

cat > testfile
echo -ne "Content-type: text/plain\n\n"
echo "thanks got your data"

Burde gøre det. test.cgi modtager jo data på stdin, så cat vil
tømme stdin til testfile, og udskrive en ok meddelelse. Så kan
du bare uploade nogle test data og se hvordan upload
multipart data ser ud. Så vidt jeg husker er det stort set det
samme som et MIME email.

> Nogle der kan give lidt source code hvordan det eventuelt kan lade sig
> gøre

Find ud af hvor mange filer/data der skal uploads (hvis der skal uploads
mere end et billed/ checkbuttons osv).

Find en streng som ikke findes i nogle af datafilerne, dette er IDstring,
så er formatet vist noget i retning af: (dette er fra hukommelse, jeg har
lavet en multipart modtager cgi, men kan ikke lige finde det.)

--IDstring
content-et-eller andet filename="hello"

binære data...
--IDstring
content-et-eller andet filename="hello2"

binære data...
--IDstring
button="clicked"
--IDstring

Så det er dette indhold du skal sende til port 80 på den server
du vil ringe til.

Hvis du er interesseret kan jeg sende dig et hack jeg rystede
sammen, det er et c program, der virker som en proxy mellem
klient og server, og logger alt hvad der sendes frem og tilbage.
Det gør det ret let at debugge hvordan sådanne protokoller
virker. Men jeg kan ikke garentere at det virker, da det er
lidt siden jeg rodede med det (brugte det til at hacke teknikken
bag en web-stemme side).

--
Carsten Svaneborg
http://www-theory.mpip-mainz.mpg.de

Søren B. Thygesen (15-08-2001)
Kommentar
Fra : Søren B. Thygesen


Dato : 15-08-01 13:58

Det har selvfølgelig ikke meget med standard C at gøre (og det kræver
Windows (NT?)), men
det her er den nemme løsning:

Sammenstyk en ftp fil baseret på brugerens ønsker f.eks.:

[c:\ftp.txt]
open 23.5.23.5
johndoe
sesame

lcd F:/yourlocaldir
mkdir /someremotedir/newremotedir
cd /someremotedir/newremotedir
binary
put myfile.dat

bye
[/c:\ftp.txt]


og kør:

[ccode]
#include <stdlib.h>
int main() {
   return system("FTP.EXE -s:c:\\ftp.txt > ftp.log");
}
[/ccode]

mvh,
Søren

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste