Word öffnen



  • muss ich das so machen
    ??? .SetVisible(TRUE);

    aber was muss anstatt den ??? hin



  • bin über jeden Tipp dankbar 😉



  • Such mal nach nem Beispiel mit FindWindow (du brauchst einen Zeiger auf Word).

    Den Rest könnte SetWindowPos oder SetFocus erledigen - musste mal suchen.



  • okay, mach ich

    mmh, in einem anderen Versuch hat das mit SetVisible funktioniert, aber auch nur weil die das so gemacht haben

    _Application objWord;
    .....
    objWord.SetVisible(TRUE); //This shows the application.

    also kann ich das jetzt nocht so machen, oder? Schade...



  • Wenn du das gefunden hast, hast du es auch mal probiert?

    Ich hab schon mal gesagt: Ich habe nur Vorschläge - keine Musterlösungen! 🙄



  • hallo

    okay, hab's gefunden. Ich muss da einfügen

    {
    		// WORD SICHTBAR MACHEN
    		DISPID dispidVisible = 0;
    		vParam.vt = VT_BOOL;
    		vParam.boolVal = VARIANT_TRUE;
    
            hr = spDispWord.GetIDOfName(L"Visible", &dispidVisible);
            hr = spDispWord.PutProperty(dispidVisible, &vParam);
          }
    

    aber jetzt bekomme ich, wenn ich in die folgende Zeile reinstepp eine Exception
    CComDispatchDriver spDocuments(vResult.pdispVal);

    dann komm ich da rein

    CComDispatchDriver(IDispatch* lp)
    	{
    		if ((p = lp) != NULL)
    			p->AddRef();
    	}
    

    und in der Zeile p->AddRef(); bekomm ich ein Exception

    An was liegt das denn, weiß das jemand ?

    danke euch



  • hat sich erledigt



  • hallo

    kann mir jemand nochmal weiterhelfen, komm einfach nicht weiter

    Und zwar wird hier die Word Datei mit Namen test.doc geöffnet

    Nun möcht ich aber ansatt dem string "C:\\test.doc");,
    diese funktion aufrufen
    m_pSteuerung->GetVorlagendatei() (die in einer anderen Klasse sich befindet)
    Aber wie macht man das

    Wenn ichs einfach einsetz, dann komen folgende Fehler, aber ist ja klar, dass es so nicht geht:
    SysAllocString' : cannot convert parameter 1 from 'class CString' to 'const unsigned short *'

    // Durch den Aufruf der Open - Methode 
              // wird ein bestehendes Dokument geöffnet.
              // Hier rufen wir nur mit einem einzigen Parameter auf, dem Dateinamen.
              VARIANT vFilename;
              vFilename.vt = VT_BSTR;
              vFilename.bstrVal = SysAllocString(L"C:\\test.doc");
    

    danke für eure Hilfe 🙂



  • hallo

    was muss ich hier machen, bekomme folgende Fehlermeldung:
    'L' : undeclared identifier
    Versteh das nicht so ganz..

    VARIANT vFilename;
              vFilename.vt = VT_BSTR; 
    		  vFilename.bstrVal = SysAllocString(L(m_pSteuerung->GetVorlagendatei())); 
    hr = spDocuments.Invoke1(L"Open", &vFilename, &vResult);
    SysFreeString(vFilename.bstrVal);
    

    danke



  • Hast du schon versucht, es einfach wegzulassen?

    vFilename.bstrVal = SysAllocString(m_pSteuerung->GetVorlagendatei());
    


  • yup da bin ich grad 😉
    weiß nur nicht wie man konvertiert

    Die Fehlermeldung lautet:
    cannot convert parameter 1 from 'class CString' to 'const unsigned short *'


Anmelden zum Antworten