vorrei avere due istanze perchè all'utente viene chiesto se
1)agganciarsi ad un istanza esistente per importare dati dal server com "direttamente" ossia uno apre manualmente il programma carica il modello e tenendolo aperto preme un pulsante sul mio progetto che carica il modello.
2)nuovo modello se l'instanza non c'è : l'utente sceglie un file e automaticamente viene creata un istanza ,caricato il modello e caricati i dati.
3)Se l'istanza c'è gia vorrei creare una nuova istanza per poter lasciare inalterata l'istanza presente e non modificare niente in quel modello , andando ad importare i dati dal secondo modello.
questo è il codice che uso:
codice:
CLSID clsid;
IUnknown *punk;
DWORD dwUnused;
hr = CLSIDFromString(L"{827954DF-1EF3-4FFD-BEEB-CF0FB10E70B8}", &clsid);
hr =CoCreateInstance(clsid,NULL,CLSCTX_LOCAL_SERVER,IID_IUnknown, (void **)&punk) ;
hr =CoRegisterClassObject(clsid, punk,CLSCTX_INPROC_SERVER, REGCLS_MULTIPLEUSE, &dwUnused);
hr= punk->QueryInterface(__uuidof(Sap2000::_SapObject), (void**)&m_pSap);
//Lancio sap2000 se è chiuso , carico il file .sdb e importo
AfxOleGetMessageFilter()->SetMessagePendingDelay(0);
AfxOleGetMessageFilter()->EnableNotRespondingDialog(FALSE);
AfxOleGetMessageFilter()->EnableBusyDialog(FALSE);
if(bImportationType == IMPORTER_API_START_SDB)
{
_bstr_t bstrFile = strFile;
m_pSap->ApplicationStart(Sap2000::kN_m_C,TRUE, "c:\\sap\\beam2.SDB");
}