Har lite problem med hur jag ska lösa följande: Att modifiera CustomProperties gör du med antingen Det är ett problem, för att använda word måste jag ju köra interop . Word automationion, detta funkar ju inte i asp.net. Det säger ju MS själva. För att skapa en zip rekommenderas SharpZipLib, har själv använt den mycket: http://www.icsharpcode.net/OpenSource/SharpZipLib/Default.aspx OK, nu förstår jag vad du menar med att det inte fungerar från ASP.NET. Det blir som du säger spännade då det är flera anrop på en gång. Interop i sig från .NET är ju inget problem, men det blir problem när det är flera anrop (och trådar) samtidigt på servern som kör Word. Ok, det där med Word Interop via ASP.NET fungerar som sagt extremt dåligt idag. Fundering: Vad säger alternativen till ms office? Finns det något trevligt (och bättre?) api till de sakerna? Typ open office eller vad de nu heter? Ok, efter lite testande så funkar appen fint då jag kör den manuellt. Men via asp.net funkar det mindre bra då ASP.NET användaren ej har rättigheter. Ett alternativ är kanske att köra impersenate men det känns lite lurigt. Någon som vet om det skulle fungerar bättre att lägga det hela i en webservice? Webservices kör oxå under ASPNET kontot så det hjälper dig inte. Du får köra impersonate eller ge ASPNET kontot behörighet till den mapp du jobbar mot. ta en titt på http://www.aspose.com/Products/Aspose.Word/ om den kan göra det du vill Har redan kolla på denna. Tyvär kan man inte uppdatera ett dokuments fält (properties) med denna.Hjälp med bästa (möjliga) lösning.
Läsa ut X antal word dokument som finns i db.
I varje dokuemtn, skriva till en custom property i spara dokumentet.
Sedan packa alla dokumenten till en zip fil.
Skicka till användarens browser.
Att läsa ut och spara filerna på en plats på server är ju lätt.
Problemet uppstår då jag måste skriva till varje dokuments proprerty och sedan spara.
ASP.Net har ju ganska fattigt stöd för att modifiera word dokument idag.
Min lösning är att skapa en liten applikation som jag installerar på servern denna anropas från min asp.net sida. Detta kräver antaglien att word finns på server.
Någon som har lite förslag på hur jag annars löser detta?Sv: Hjälp med bästa (möjliga) lösning.
1. Words objektmodell (vilket inför kravet att Word är installerat på servern) eller
2. DsoFile (se http://support.microsoft.com/?id=224351), vilket gör att du slipper ha Word på servern.
Observera att om du vill att fält i dokumentet skall uppdateras när du uppdaterar de Custom Properties som de beror på så måste du dessutom säga till fälten att uppdatera sig. Och för att göra detta så måste du använda Words objektmodell eller ha ett macro i dokumentet som alltid körs vid uppstart (eller kanske beroend på en Custom Property) och uppdaterar dina fält.
Så hur du skall göra beror på vad dina Custom Properties används för.
/AndreasSv:Hjälp med bästa (möjliga) lösning.
Sv: Hjälp med bästa (möjliga) lösning.
/JohanSv: Hjälp med bästa (möjliga) lösning.
Vad du får göra är en WebService (t.ex. på en annan maskin) som har en instans av Word igång och gör hanteringen. Här måste du dock ha en låsningsmekanism så att inte flera anrop på en gång försöker använda MS Word. Dessutom så måste du ha koll på att ingen annan på den maskinen använder Ms Word samtidigt.
Krångligt och riskfyllt, men borde fungera.
/AndreasSv:Hjälp med bästa (möjliga) lösning.
Jag har under dagen skrivit ihop en liten konsoll applikation som jag anropar från min asp.net kod.
Denna app ligger på servern som har word installerat.
Applikationen skriver min fil till disk, modifierar dokumentets egenskaper och sparar filen/filerna.
Detta verkar än så länge fungera. Vad som återstår är att packa alla filer med zip, men det borde inte vara så svårt.Sv:Hjälp med bästa (möjliga) lösning.
Sv: Hjälp med bästa (möjliga) lösning.
Sv:Hjälp med bästa (möjliga) lösning.
Sv: Hjälp med bästa (möjliga) lösning.
(den automatiserar inte word , utan har en egen word fil hanterare)Sv:Hjälp med bästa (möjliga) lösning.