Hvordan kan jeg stoppe Excel 2003 fra hengende etter åpning et regneark i IE?

stemmer
1

Jeg har en web-applikasjon som gir Excel-filer via IE 7. Det ber om filer med en HTTP GET fra en URL som returnerer data med et innhold type 'application / vnd.ms-excel'. Det åpner så regneark i en iframe.

Alt dette fungerer fint med mindre Excel er allerede åpen når et regneark blir lastet ned. I dette tilfellet er det fortsatt vises riktig, men gjenbruker forekomst av Excel som er åpen. Når IFrame er lukket, Excel henger. Excel blir bare ulåst hvis brukeren logger ut av web-applikasjon, eller hvis de laster ned en fil av en annen type.

Jeg har prøvd å slå på Ignorer andre programmer innstillingen under Verktøy | alternativer | Generelt, men det gjorde ikke løse problemet.

Jeg har også prøvd å følge trinnene i dette svaret (som knyttes referansen sier 'Dette problemet er løst i Excel 2007 beta 2.') uten hell.

Er det en slags 'disposisjon' skritt som jeg ikke gjør for tiden som ville hindre Excel fra hengende?

versjoner:

Excel 2003 (11.8220.8221) SP3

IE 7.0.5730.11 (Oppdater versjoner: 0)

Publisert på 14/10/2008 klokken 12:23
kilden bruker
På andre språk...                            


5 svar

stemmer
0

Dessverre er dette helt ut av hendene. Det er egentlig avhengig av hvilken versjon av Excel de har og hvilke oppdateringer har blitt brukt.

Svarte 14/10/2008 kl. 12:25
kilden bruker

stemmer
0

Har du vært i stand til å gjenskape dette problemet i ditt eget miljø? Hvis ikke, kan det være et problem på kundens datamaskin. Er det noen måte du kan finne ut hva alternativene var eller werent installert, eller hvis Excel har vært opprettholdt med sine flekker?

Det virker for meg at kontoret selv må re-installert, hvis ikke IE 7 etter det.

Jeg vil også se nærmere på eventuelle iFrame avsluttende problemer. For å teste denne teorien ut, kan du legge inn iframe til en ny side (uten iframes) og deretter koble tilbake til en side med iframes og Excel-filen? Jeg innser at sannsynligvis wont' være en fungerende løsning for deg, men det burde hjelpe deg å eliminere enten det er excel, IE7 eller iframe-koden har en bug.

Svarte 27/01/2009 kl. 15:55
kilden bruker

stemmer
1

Videre til Robert svar , følgende linje (Java) kode løser dette problemet ved at den forhindrer Excel fra henge:

response.setHeader("Content-Disposition", 
    "attachment; filename=\"" + filename + "\"");

[NB 'reaksjon' er en HttpServletResponse]

Men tvinger det regnearket som skal lastes inn i et Excel-vinduet heller enn å bli vist i IFrame ...

Oppdatering: Tilbakestilling URL-adressen til IFrame for tomme krefter Excel-forekomsten for å kastes, og løser dette problemet (uten å kreve Content-Dispositionendring).

Svarte 30/01/2009 kl. 10:38
kilden bruker

stemmer
0

Er dette noe du er i stand til å reprodusere, eller er det noe som blir rapportert til deg av en kunde, og du prøver å jakte den ned?

Linken du har gitt avtaler med flere skjermer - Jeg har flere skjermer, så vel når jeg forankre min laptop, og jeg har funnet en rekke programmer ikke svare godt. For eksempel, hvis et program prøver å åpne en modal dialogboks i en plass på skrivebordet som ikke finnes lenger (for eksempel på min "ekstra skjerm" etter I'veundocked min laptop), det vil låse opp programmet siden jeg kan 't komme til boksen. Kan det være det som skjer her?

Et annet potensielt problem som skjer hvis du spør brukeren om noen form for godkjenning når de får Excel-filen. På vår Sharepoint-området, Excel ønsker brukeren å autentisere, og hvis det dialog modal autentisering eller annen måte blir skjøvet i bakgrunnen, kan det være umulig å komme til forsiden igjen. Den eneste måten er hvis du dreper prosessen, eller hvis du lukker sharepoint leseren, siden det avslutter forespørsel om filen i første omgang.

Håper dette hjelper, og hvis en av disse gir deg noen flere ledetråder, legge dem her, og vi vil få dette løst.

Svarte 30/01/2009 kl. 15:03
kilden bruker

stemmer
1

Ikke sikker på om dette hjelper, men ...

Jeg hadde noen lignende problem (generere CSV innhold på fly) for lenge siden, og alt jeg kan huske er at det hadde å gjøre noe med rette Response metoder blir kalt. Koden var noe sånt som dette


Response.Clear();
Response.Buffer = true;

Response.AppendHeader("Content-Disposition", "attachment; filename=export.csv");
Response.Cache.SetCacheability(HttpCacheability.Private);
Response.Cache.SetExpires(DateTime.MinValue);
Response.Cache.SetLastModified(DateTime.Now);
Response.Cache.SetMaxAge(new TimeSpan(1));
Response.ContentType = "text/csv";

Response.ContentEncoding = System.Text.Encoding.Unicode;

...
//Some  writing to the Response.OutputStream
...

Response.Flush();

//I am not sure about the following line:
Response.End(); 

Svarte 30/01/2009 kl. 18:22
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more