diff --git a/DataMgr/src/CreateNewTableDlg.cpp b/DataMgr/src/CreateNewTableDlg.cpp index 46b490e..5f83740 100644 --- a/DataMgr/src/CreateNewTableDlg.cpp +++ b/DataMgr/src/CreateNewTableDlg.cpp @@ -2,6 +2,8 @@ #include "DataHelper.h" #include "LogIO.h" #include "dataslothelper.h" +#include "geometryutils.h" + extern DEFAULTTABLE *DefauleTable;//[DefTabNum]; extern int DefTabNum; /* @@ -140,7 +142,7 @@ void CCreateNewTableDlg::slotSave() { QMessageBox::warning(NULL,"警告!",FileName+"\r\n打开井次文件失败!");return ; } - if(logio.FindObjectIndex(TableName.toStdString().c_str())>=0) + if(logio.FindObjectIndex(UTF8ToGBK(TableName))>=0) { QMessageBox::warning(NULL,"警告!","您要产生的表名称已存在!");return; } @@ -189,7 +191,7 @@ void CCreateNewTableDlg::slotSave() *(DWORD *)&pField[i].Reserved = strDigit.toInt(); } - int table=logio.CreateTable(0,TableName.toLocal8Bit().toStdString().c_str(),TableHzName.toLocal8Bit().toStdString().c_str(),fNum,&pField[0],0); + int table=logio.CreateTable(0,UTF8ToGBK(TableName),TableHzName.toLocal8Bit().toStdString().c_str(),fNum,&pField[0],0); delete []pField; logio.CloseTable(table); logio.Close(); diff --git a/Slfio/src/slf.cpp b/Slfio/src/slf.cpp index dfe78f7..ba26468 100644 --- a/Slfio/src/slf.cpp +++ b/Slfio/src/slf.cpp @@ -113,10 +113,19 @@ bool MappingMem(HANDLE *hHandle,LPSTR *hMem,int len,const char* name) 0, // low offset: beginning 0); // default: map entire file #else - int hMapFile = open(slf1.toStdString().c_str(), O_RDONLY); - if (hMapFile<0) +// *hHandle = open(slf1.toStdString().c_str(), O_RDWR|O_CREAT,0644); +// if (*hHandle <0) +// return FALSE; +// void* p = mmap(0, 4096*512,PROT_READ|PROT_WRITE,MAP_SHARED,*hHandle,0); + *hHandle = -1; + void* p = mmap(0, 4096*512,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0); + if (p == MAP_FAILED) + { + //qDebug()<

OpenCurve(m_pWellLogs[0]->GetName().toStdString().c_str()); + int index=logio->OpenCurve(UTF8ToGBK(m_pWellLogs[0]->GetName())); if(index>-1) { flag=1; } @@ -511,7 +511,7 @@ void WellLogTableDialogNew::slotSave() int count=rowCount; for(int j=0;jOpenCurve(m_pWellLogs[j]->GetName().toStdString().c_str()); + int index=logio->OpenCurve(UTF8ToGBK(m_pWellLogs[0]->GetName())); if(index>-1) { float *data=new float[rowCount+1]; @@ -552,7 +552,7 @@ void WellLogTableDialogNew::slotSave() delete logio; return; } - int iIndex=logio->OpenTable(m_pWellLogs[0]->GetName().toStdString().c_str()); + int iIndex=logio->OpenTable(UTF8ToGBK(m_pWellLogs[0]->GetName())); if (iIndex >=0) { int fc=logio->GetTableFieldCount(iIndex);