Behöver använda Word.ApplicationClass för att lägga till text i ett word dokument som finns på användarens disk. Det hela fungerar men tar mycket långt tid. Vet inte om jag gör rätt men kör koden nedan. Tacksam för tips / kommentarer. MS säger följande: Är det någon som kan rekommendera en 3 'e part produkt för detta ändamål? Hej Testade DSOFile.OleDocumentPropertiesClass som enligt MS skall kunna läsa o skriva till MS office dokument properties. Extremt segt vid användning av Word.ApplicationClass
DSWordApp w = new DSWordApp();
w.Open( filePath );
w.InsertText("TESTAR");
w.Save();
w.Quit();
public class DSWordApp
{
private Word.ApplicationClass oWordApplic;
private Word.Document oDoc;
public DSWordApp()
{
oWordApplic = new Word.ApplicationClass();
}
public void Open( string strFileName)
{
object fileName = strFileName;
object readOnly = false;
object isVisible = true;
object missing = System.Reflection.Missing.Value;
oDoc = oWordApplic.Documents.Open(ref fileName, ref missing,ref readOnly,
ref missing, ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref isVisible,ref missing,ref missing,ref missing);
oDoc.Activate();
}
public void Save( )
{
oDoc.Save();
}
}
Sv: Extremt segt vid användning av Word.ApplicationClass
CreateObject/CoCreateInstance hangs and never completes, or takes a long time to return. On some servers, the creation is quick but 1004 errors appear in the Windows (NT) Event Log.
http://support.microsoft.com/default.aspx?scid=kb;EN-US;q257757Sv: Extremt segt vid användning av Word.ApplicationClass
Sv:Extremt segt vid användning av Word.ApplicationClass
Vet inte riktigt vad du ska göra, men aspose.word använder jag och det tycker jag är bra. Annars är väl det nya Visual studio tools för office något som kanske kan intressera.Sv: Extremt segt vid användning av Word.ApplicationClass
Fick den att fungera tillslut.
DSOFile.CustomProperty customProp = null;
object oValue = "mj";
bool bPropFound = false;
for(int i = 0 ; i < customProperties.Count - 1; i++)
{
//System.Diagnostics.Trace.WriteLine ( customProperties[i].Name );
if(customProperties[i].Name == "DocumentID")
{
customProp = customProperties[i];
customProp.set_Value(ref oValue);
bPropFound = true;
return;
}
}
if(!bPropFound )
{
dsoDoc.CustomProperties.Add("DocumentID",ref oValue);
}
dsoDoc.Save();
dsoDoc.Close(true);
dsoDoc = null;