Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[VBNET] Webclient.downloadfile levert HTML op

Pagina: 1
Acties:

  • GerEielts
  • Registratie: Augustus 2005
  • Laatst online: 09-05-2024
Hi, ik haal een Worddocument binnen op een XP-sp2-client (waarop MSOffice2003 is geinstalleerd) van een SBS2003-server(IIS6) met de volgende VB.net-code:

Visual Basic .NET:
1
2
3
4
5
6
7
8
Dim instance As HttpWebRequest = WebRequest.Create("http://www.xxx.nl/" & "TEST.doc")
instance.Method = "GET"
Dim WebResp As HttpWebResponse = instance.GetResponse()

Dim StreamAnswer As IO.Stream
StreamAnswer = WebResp.GetResponseStream()
Dim sss As New IO.StreamReader(StreamAnswer)
RTBExtraGegevens.Text = sss.ReadToEnd


Ik ontvang TEST.doc, maar als ik de inhoud van het bestand lees zie ik:

HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<!-- Served by: www -->
<HTML>
<HEAD>
<!-- START INCLUDED HEADERS -->
<TITLE>www.xxx.nl></TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=windows-1252">

<!-- END INCLUDED HEADERS -->
</HEAD>
<frameset rows="0,*" frameborder="0" border=0 framespacing="0">
<frame name="" src="/empty.php">
<frame name="" src="http://www.xxx.nl/TEST.doc" marginwidth="0" marginheight="0" scrolling="Auto" frameborder="no" framespacing="0">
<NOFRAMES>
<BODY>
<P>This frameset document contains:
<UL>
<LI><A href="www.xxx.nl/TEST.doc">http://www.xxx.nl/TEST.doc</A>
</UL>
</BODY>
</NOFRAMES>
</frameset>
</HTML>


Met VB.net op de server is een webapplicatie aangemaakt, waarvan de bestanden opgeslagen zijn in inetpub/wwwroot/<naam webapplicatie>. De MIME-types in IIS6 zijn o.a. ".doc = application/octet-stream". In IIS6 is een website aangemaakt met als Basismap-verwijzing inetpub/wwwroot/<naam webapplicatie>.
De NTFS-rechten op deze directory staan op IUSR-<servername> volledig beheer. De machtigingen op het delen van deze map staan eveneens op volledig beheer van IUSR-<servername>. In IIS6 wordt GEEN gebruik gemaakt van ISAPI-filters (dit is wellicht nodig?), terwijl er ook geen standaarddocument is ingeschakeld. In deze map staat dus ook Test.doc.

Als ik de volgende URL intik in IE op de XP-client: www.xxx.nl/Test.doc, dan opent MSWord zich met de juiste inhoud van Test.doc (precies, zoals ik het wil hebben), echter als ik bovengenoemde code gebruik vanuit de applicatie, krijg ik dus de vermelde inhoud van een HTML_pagina. Het lijkt er mijns inziens op, dat er hier geen rechtenprobleem aan de orde is.

Ik heb veel gegoogled om te achterhalen wat hier aan de hand kan zijn, maar het enige dat ik kan vinden (en dat is nog uiterst vaag) is, dat IIS in de "war" kan komen door een onduidelijk HTTP-request.

Iemand een idee hoe dit komt? En wat ik aan moet passen op de server (of in de applicatie) om de "echte" inhoud van TEST.doc te verkrijgen ???

Hulp wordt op prijs gesteld.

gr. Ger.

[ Voor 0% gewijzigd door een moderator op 22-02-2008 12:13 . Reden: Code tags toegevoegd ]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Als je code post, gebruik dan code tags ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Het is waarschijnlijk een beveiliging van de site.

Mail de eigenaar van de site voor details.

[ Voor 31% gewijzigd door LuCarD op 22-02-2008 12:18 ]

Programmer - an organism that turns coffee into software.


  • GerEielts
  • Registratie: Augustus 2005
  • Laatst online: 09-05-2024
LuCarD schreef op vrijdag 22 februari 2008 @ 12:17:
Het is waarschijnlijk een beveiliging van de site.

Mail de eigenaar van de site voor details.
Bedankt voor je snelle antwoord, maar ik beheer zelf de server. Waarom wel een download via IE en niet via de applicatie ??

Enig idee ?

gr. Ger.

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

GerEielts schreef op vrijdag 22 februari 2008 @ 12:34:
[...]


Bedankt voor je snelle antwoord, maar ik beheer zelf de server. Waarom wel een download via IE en niet via de applicatie ??

Enig idee ?

gr. Ger.
Ik denk dat de frameset ook krijgt als je hem download via IE. Alleen IE laat de frame niet zien aangezien het WORD doc op 100% staat.

Maak je soms gebruik van URL cloaking? Als ik namelijk naar jouw domein surf dan krijg ik ook de vage frameset constructie.

[ Voor 12% gewijzigd door LuCarD op 22-02-2008 12:42 ]

Programmer - an organism that turns coffee into software.


  • GerEielts
  • Registratie: Augustus 2005
  • Laatst online: 09-05-2024
LuCarD schreef op vrijdag 22 februari 2008 @ 12:37:
[...]

Ik denk dat de frameset ook krijgt als je hem download via IE. Alleen IE laat de frame niet zien aangezien het WORD doc op 100% staat.

Maak je soms gebruik van URL cloaking? Als ik namelijk naar jouw domein surf dan krijg ik ook de vage frameset constructie.
Die site, die ik noemde was gewoon fake en toevallig heb ik hem www.xxx.nl genoemd! Ik wist niet eens, dat die bestond.... dus www.xxx.nl heeft niets met mij te maken (ik ben er effe zelf geweest en ik wil er ook niks mee te maken hebben).... dus sorry voor het misverstand.

Neemt echter het probleem niet weg.... ik gebruik geen URL cloaking. Het gaat er simpelweg om, dat ik vanaf een XP-client (via VB.net code) een Worddocument wil openen vanaf de server. Ik krijg echter een soort HTML-pagina, terwijl, als ik de URL intik in IE op de client ik WEL de gewenste handeling krijg, nl. dat MSWord op de client wordt geopend met de inhoud van Test.doc.

Nogmaals, sorry voor de misvatting,

gr. Ger.

  • Basti504
  • Registratie: Februari 2005
  • Laatst online: 16-11 20:47

Basti504

Niet de enige, wel de echte.

Ik gebruik zelf voor mijn auto update functie in mijn programma ook Webclient.downloadfile om bestanden te downloaden. Deze komen bij mij altijd goed aan, als het echte bestand zeg maar.

Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
Dim wClient As Net.WebClient = New Net.WebClient

''ok, nu even wachten
Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.WaitCursor

'waarvan gaan we downloaden, dit is hardcoded
Dim downloadlinkversiebeheer As String = "http://members.home.nl/harry.bastiaansen/temperatuurprogrammaversiebeheer.txt"

'downloaden
wClient.DownloadFile(downloadlinkversiebeheer, Application.LocalUserAppDataPath & "\TemperatuurProgrammaVersieBeheer.txt")

Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.Default


Misschien helpt dit :)

...


  • GerEielts
  • Registratie: Augustus 2005
  • Laatst online: 09-05-2024
Dank je Basti504 voor je antwoord.
Dat is bij mij nou het vreemde.... Ook als ik txt-bestanden binnenhaal, krijg ik een HTML-achtig bestand i.p.v. de inhoud van het tekstbestand.. ook al gebruik ik jouw code !

Ik snap er niks van....

Iemand nog een idee ?

gr. Ger.

[ Voor 5% gewijzigd door GerEielts op 24-02-2008 18:17 ]

Pagina: 1