Avatar billede cpmonster Nybegynder
23. september 2004 - 13:52 Der er 8 kommentarer og
1 løsning

Binary Write / Opret PDF'er med Pdflif problemer med XP/IE6

Hej

Binary write generelt er et problem i Windows XP sammen med IE6 og Jeg ved ikke hvordan jeg skal løse det.

Vi generer både PDF'er og PNG filer i .ASPX filer der skrives ned i en Buffer som så skriver til IE6 med Response.BinaryWrite(buff)/MemoryStream.WriteTo().

Dette kan man ikke mere efter de nye opdateringer af IE/XP, hvilket betyder at vores dynamiske PDF'er (pdflib) og dynamiske .PNG billeder/Grafer bare returner blanke sider. Hvad angår png er dette løst, men PDF'er er et stort problem. Vi bruger Twin servere, hvilket gør at vi ikke kan skrive filen til HArddisk og så response.Redirect browseren derhen.

MSDN snakker om en løsning til at skrive med Response.WriteFile()
: http://support.microsoft.com/default.aspx?scid=kb;en-us;Q306654&ID=kb;en-us;Q306654&SD=MSDN
Men det løser ikke at der skrives til Browser med Binary data, hvilket åbenbart stadig ikke er tilladt. (Den er i øvrigt prøvet)

Problemet er slet ikke tilstede i andre browsere eller win2k for den sags skyld.

Og jeg behøver ikke at få af vide at jeg bare skal bruge Firefox/mMozilla/Netscape/osv. Jeg laver løsninger til hr. og fru. Nielsen som intet fatter af Computere. Vi kan ikke kræve at de skal installere alt muligt for at bruge dette system.

Jeg beder til nogen af jer kender til dette problem og måske har en løsning. JEg har overvejet at lave links direkte til PDF'erne og så kan man højreklikke og downloade filen. Men det er ikke brugervenligt.

Så hvorfor kan de f*** hackere ikke bare holde fíngerene for dem selv så Microsoft ikke tvinges ud i at pålægge mere sikkerhed i deres browser, som så ødelægger vores Kundeløsninger?

ps. Hvis du ser en Hacker/Vira Programmør Slå ham hårdt. Ødelæg hans bil. brænd hans seng.. Find gerne flere.

pps. Undskyld den personlige bemærkning.
Avatar billede arne_v Ekspert
23. september 2004 - 13:58 #1
Hvad sker der helt præcist ?

Jeg mener XP med IE6 kan vel godt åbne en statisk PDF hvorfor så ikke en dynamisk PDF !?

I får sat den rigtige content type, content length etc. ?
Avatar billede cpmonster Nybegynder
23. september 2004 - 14:34 #2
Ja. Length er content er i orden. DEt hele er kopieret fra en ASP side hvor dette virker.

Siden er bare blank. der sker intet.
Avatar billede cpmonster Nybegynder
23. september 2004 - 14:37 #3
som sagt hvis jeg skriver filen til Serveren og Response.Redirect dertil kører dette.

men da browseren ikke ved hvilken server den er på, så er dette ikke en løsning. Måske kan koden finde server navn, nemt, derefte redirecte til denne server's navn. eller tilsvarende. Men som det er nu dur dette ikke, da nogle af disse løsninger er bag Firewall der ikke tillader disse ip'er pludselig at komme frem.
Avatar billede burningice Nybegynder
23. september 2004 - 17:55 #4
må man se noget kode der sender pdf'en til klienten?
Avatar billede cpmonster Nybegynder
24. september 2004 - 16:46 #5
Dim buff() as byte
    buff = oPDF.get_buffer()


    Response.Expires = 0
    Response.Buffer = true
    Response.ContentType = ("application/pdf")
    'Response.ContentType = ("text/plain")
    Response.Addheader ("Content-Disposition", "inline; filename=" & "xray.pdf")
    Response.Addheader ("Content-Length", buff.Length())
    Response.BinaryWrite(buff)
    Response.End()
Avatar billede burningice Nybegynder
25. september 2004 - 17:13 #6
kan du ikke lave noget ala

buff.Save(Response.OutputStream)

??
Avatar billede burningice Nybegynder
25. september 2004 - 17:16 #7
hm.. nej... kan se at buff er af typen byte[]

:(
Avatar billede cpmonster Nybegynder
13. oktober 2004 - 00:11 #8
Kommer ikke videre her, ej heller har jeg løst dette endnu til vores kunders store skuffelse.
Avatar billede burningice Nybegynder
13. oktober 2004 - 14:00 #9
det virker meget meget underligt :S
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