本文整理汇总了C++中CONFIG::GetName方法的典型用法代码示例。如果您正苦于以下问题:C++ CONFIG::GetName方法的具体用法?C++ CONFIG::GetName怎么用?C++ CONFIG::GetName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CONFIG
的用法示例。
在下文中一共展示了CONFIG::GetName方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Delete
/*
Delete()
Elimina della lista il valore relativo alla coppia sezione/chiave.
Non elimina fisicamente l'elemento ma si limita a marcarlo in modo tale che quando la lista
viene salvata sul registro si possano individuare le chiavi da eliminare fisicamente.
LPCSTR lpcszSectionName nome sezione
LPCSTR lpcszKeyName nome chiave
*/
BOOL CConfig::Delete(LPCSTR lpcszSectionName,LPCSTR lpcszKeyName)
{
BOOL bDeleted = FALSE;
CONFIG* c;
ITERATOR iter;
// scorre la lista cercando l'entrata relativa alla coppia sezione/chiave
if((iter = m_plistConfig->First())!=(ITERATOR)NULL)
{
do
{
c = (CONFIG*)iter->data;
if(c)
if(strcmp(lpcszSectionName,c->GetSection())==0)
{
if(strcmp(lpcszKeyName,c->GetName())==0)
{
// marca l'elemento per l'eliminazione
c->SetType(NULL_TYPE);
SetModified(TRUE);
bDeleted = TRUE;
break;
}
}
iter = m_plistConfig->Next(iter);
} while(iter!=(ITERATOR)NULL);
}
return(bDeleted);
}
示例2: SaveSection
/*
SaveSection()
Salva nel registro i valori presenti nella lista relativi alla sezione.
LPCSTR lpcszRootKey nome della chiave base
LPCSTR lpcszSectionKey nome della sezione
*/
void CConfig::SaveSection(LPCSTR lpcszRootKey,LPCSTR lpcszSectionKey)
{
CONFIG* c;
ITERATOR iter;
LONG lRet;
char szKey[REGKEY_MAX_KEY_VALUE+1];
if(m_pRegistry)
{
m_pRegistry->Attach(HKEY_CURRENT_USER);
// scorre la lista aggiornando la sezione
if((iter = m_plistConfig->First())!=(ITERATOR)NULL)
{
do
{
c = (CONFIG*)iter->data;
if(c)
// non inserisce nel registro le chiavi eliminate
if(c->GetType()!=NULL_TYPE && strcmp(c->GetSection(),lpcszSectionKey)==0)
{
// salva la chiave nel registro
_snprintf(szKey,sizeof(szKey)-1,DEFAULT_REG_KEY"\\%s\\%s",lpcszRootKey,c->GetSection());
if((lRet = m_pRegistry->Open(HKEY_CURRENT_USER,szKey))!=ERROR_SUCCESS)
lRet = m_pRegistry->Create(HKEY_CURRENT_USER,szKey);
if(lRet==ERROR_SUCCESS)
{
if(c->GetType()==LPSTR_TYPE)
m_pRegistry->SetValue(c->GetValue((LPCSTR)NULL),c->GetName());
else if(c->GetType()==DWORD_TYPE)
m_pRegistry->SetValue(c->GetValue((DWORD)0L),c->GetName());
m_pRegistry->Close();
}
}
iter = m_plistConfig->Next(iter);
} while(iter!=(ITERATOR)NULL);
}
m_pRegistry->Detach();
}
}
示例3: if
/*
Export()
Esporta la configurazione corrente nel file specificato.
*/
BOOL CConfig::Export(LPCSTR /*lpcszRootKey*/,LPCSTR lpcszFileName)
{
BOOL bSaved = FALSE;
FILE* fp;
if((fp = fopen(lpcszFileName,"w"))!=(FILE*)NULL)
{
CONFIG* c;
ITERATOR iter;
fprintf(fp,"[%s]\n","Configuration File");
// salva nel file le chiavi presenti nella lista
if((iter = m_plistConfig->First())!=(ITERATOR)NULL)
{
do
{
c = (CONFIG*)iter->data;
if(c)
// non inserisce le chiavi eliminate
if(c->GetType()!=NULL_TYPE)
{
if(c->GetType()==LPSTR_TYPE)
fprintf(fp,"%s;%s;%s;%s\n",c->GetSection(),c->GetName(),c->GetValue((LPCSTR)NULL),"SZ");
else if(c->GetType()==DWORD_TYPE)
fprintf(fp,"%s;%s;%ld;%s\n",c->GetSection(),c->GetName(),c->GetValue((DWORD)0L),"DW");
}
iter = m_plistConfig->Next(iter);
} while(iter!=(ITERATOR)NULL);
}
fclose(fp);
bSaved = TRUE;
}
return(bSaved);
}
示例4: registro
/*
DeleteSection()
Elimina dal registro (e dalla lista) i valori presenti nella lista relativi alla sezione.
LPCSTR lpcszRootKey nome della chiave base
LPCSTR lpcszSectionKey nome della sezione
BOOL bDeleteFromRegistry flag per eliminazione delle chiavi dal registro
*/
void CConfig::DeleteSection(LPCSTR lpcszRootKey,LPCSTR lpcszSectionKey,BOOL bDeleteFromRegistry/*=FALSE*/)
{
CONFIG* c;
ITERATOR iter;
char szKey[REGKEY_MAX_KEY_VALUE+1];
if(m_pRegistry)
{
m_pRegistry->Attach(HKEY_CURRENT_USER);
// elimina (dalla lista e dal registro) le chiavi relative alla sezione
if((iter = m_plistConfig->First())!=(ITERATOR)NULL)
{
do
{
c = (CONFIG*)iter->data;
if(c)
// chiave da eliminare
if(c->GetType()!=NULL_TYPE && strcmp(c->GetSection(),lpcszSectionKey)==0)
{
// elimina la chiave dal registro
if(bDeleteFromRegistry)
{
_snprintf(szKey,sizeof(szKey)-1,DEFAULT_REG_KEY"\\%s\\%s",lpcszRootKey,c->GetSection());
if(m_pRegistry->Open(HKEY_CURRENT_USER,szKey)==ERROR_SUCCESS)
{
m_pRegistry->DeleteValue(c->GetName());
m_pRegistry->Close();
}
}
// elimina la chiave dalla lista
//m_plistConfig->Remove(iter);
// eliminando l'elemento della lista (iter) e non la chiave (marcandola come cancellata) i salvataggi successivi
// non possono eliminare dal registro le serie di chiavi come Key[0]...Key[n]
//Delete(c->GetSection(),c->GetName());
c->SetType(NULL_TYPE);
SetModified(TRUE);
}
iter = m_plistConfig->Next(iter);
} while(iter!=(ITERATOR)NULL);
}
m_pRegistry->Detach();
SetModified(TRUE);
}
}
示例5: valore
/*
String()
Restituisce o aggiorna il valore (stringa) associato alla sezione/chiave a seconda del parametro
associato al valore (NULL/-1 recupera, in caso contrario aggiorna).
LPCSTR lpcszSectionName nome sezione
LPCSTR lpcszKeyName nome chiave
LPCSTR lpcszKeyValue valore chiave (stringa)
*/
LPCSTR CConfig::String(LPCSTR lpcszSectionName,LPCSTR lpcszKeyName,LPCSTR lpcszKeyValue/*=NULL*/)
{
static char* p;
CONFIG* c;
ITERATOR iter;
p = "";
// scorre la lista cercando l'entrata relativa alla coppia sezione/chiave
if((iter = m_plistConfig->First())!=(ITERATOR)NULL)
{
do
{
c = (CONFIG*)iter->data;
if(c)
if(strcmp(lpcszSectionName,c->GetSection())==0)
{
if(strcmp(lpcszKeyName,c->GetName())==0)
{
// salta i valori marcati per l'eliminazione (NULL_TYPE)
if(c->GetType()!=NULL_TYPE)
{
if(lpcszKeyValue!=NULL)
{
// aggiorna il valore
c->SetValue(lpcszKeyValue);
p = (char*)c->GetValue(p);
break;
}
else
{
// ricava il valore
p = (char*)c->GetValue(p);
if(!*p)
p = "";
break;
}
}
}
}
iter = m_plistConfig->Next(iter);
} while(iter!=(ITERATOR)NULL);
}
return(p);
}
示例6: DeleteAll
/*
DeleteAll()
Elimina della lista tutti i valori, rimuovendoli anche dal registro.
*/
BOOL CConfig::DeleteAll(LPCSTR lpcszRootKey)
{
BOOL bDeleted = TRUE;
CONFIG* c;
ITERATOR iter;
char szKey[REGKEY_MAX_KEY_VALUE+1];
if(m_pRegistry)
{
m_pRegistry->Attach(HKEY_CURRENT_USER);
if((iter = m_plistConfig->First())!=(ITERATOR)NULL)
{
do
{
c = (CONFIG*)iter->data;
if(c)
{
_snprintf(szKey,sizeof(szKey)-1,DEFAULT_REG_KEY"\\%s\\%s",lpcszRootKey,c->GetSection());
if(m_pRegistry->Open(HKEY_CURRENT_USER,szKey)==ERROR_SUCCESS)
{
m_pRegistry->DeleteValue(c->GetName());
m_pRegistry->Close();
}
}
iter = m_plistConfig->Next(iter);
} while(iter!=(ITERATOR)NULL);
}
m_pRegistry->Detach();
SetModified(TRUE);
}
m_plistConfig->RemoveAll();
return(bDeleted);
}
示例7: Save
/*
Save()
Salva nel registro i valori presenti nella lista.
LPCSTR lpcszRootKey nome della chiave base
*/
void CConfig::Save(LPCSTR lpcszRootKey)
{
CONFIG* c;
ITERATOR iter;
LONG lRet;
char szKey[REGKEY_MAX_KEY_VALUE+1];
memset(szKey,'\0',sizeof(szKey));
if(m_pRegistry)
{
m_pRegistry->Attach(HKEY_CURRENT_USER);
// elimina (dalla lista e dal registro) le chiavi marcate per la cancellazione
if((iter = m_plistConfig->First())!=(ITERATOR)NULL)
{
do
{
c = (CONFIG*)iter->data;
if(c)
// chiave da eliminare
if(c->GetType()==NULL_TYPE)
{
// elimina la chiave dal registro
_snprintf(szKey,sizeof(szKey)-1,DEFAULT_REG_KEY"\\%s\\%s",lpcszRootKey,c->GetSection());
if(m_pRegistry->Open(HKEY_CURRENT_USER,szKey)==ERROR_SUCCESS)
{
m_pRegistry->DeleteValue(c->GetName());
m_pRegistry->Close();
}
// elimina la chiave dalla lista
m_plistConfig->Remove(iter);
}
iter = m_plistConfig->Next(iter);
} while(iter!=(ITERATOR)NULL);
}
// salva nel registro le chiavi presenti nella lista
if((iter = m_plistConfig->First())!=(ITERATOR)NULL)
{
do
{
c = (CONFIG*)iter->data;
if(c)
// non inserisce nel registro le chiavi eliminate
if(c->GetType()!=NULL_TYPE)
{
_snprintf(szKey,sizeof(szKey)-1,DEFAULT_REG_KEY"\\%s\\%s",lpcszRootKey,c->GetSection());
if((lRet = m_pRegistry->Open(HKEY_CURRENT_USER,szKey))!=ERROR_SUCCESS)
lRet = m_pRegistry->Create(HKEY_CURRENT_USER,szKey);
if(lRet==ERROR_SUCCESS)
{
if(c->GetType()==LPSTR_TYPE)
m_pRegistry->SetValue(c->GetValue((LPCSTR)NULL),c->GetName());
else if(c->GetType()==DWORD_TYPE)
m_pRegistry->SetValue(c->GetValue((DWORD)0L),c->GetName());
m_pRegistry->Close();
}
}
iter = m_plistConfig->Next(iter);
} while(iter!=(ITERATOR)NULL);
}
m_pRegistry->Detach();
SetModified(FALSE);
}
}