BOOL getDBSpace(CString strServer, CString strDBFile, char *szReturn) { char szFullNetPath[MAXPATH] = ""; /* full network path */ DBHANDLE dir_handle; /* handle for directory */ STATUS error = NOERROR; /* return status from API calls */ DWORD dwAvalid = 0; DWORD dwFree = 0; error = NotesInitExtended (0, NULL); if (error) { sprintf (szReturn, "error=Error initializing Notes."); return FALSE; } if(strServer != _T("")) { /* Compose the full network pathname to the directory. */ if (error = OSPathNetConstruct(NULL, strServer.GetBuffer(0), strDBFile.GetBuffer(0), szFullNetPath)) { OSLoadString(NULLHANDLE, ERR(error), szReturn, 1024); NotesTerm(); return FALSE; } } /* Open the directory. */ if (error = NSFDbOpen (szFullNetPath, &dir_handle)) { OSLoadString(NULLHANDLE, ERR(error), szReturn, 1024); NotesTerm(); return FALSE; } if (error = NSFDbSpaceUsage(dir_handle, &dwAvalid, &dwFree)) { OSLoadString(NULLHANDLE, ERR(error), szReturn, 1024); NotesTerm(); return FALSE; } /* Close the directory. */ if (error = NSFDbClose (dir_handle)) { OSLoadString(NULLHANDLE, ERR(error), szReturn, 1024); NotesTerm(); return FALSE; } NotesTerm(); sprintf(szReturn, "Used=%f$Free=%f$FreePer=%f$", dwAvalid/(1024.0*1024), dwFree/(1024.0*1024), 100.0*dwFree/(dwFree+dwAvalid)); return TRUE; }
STATUS NF_Command(char *server ,char* szcommand,char * szResult) { HANDLE hRetInfo; STATUS nError; char *pBuffer; nError = NotesInitExtended (0, NULL); if (nError) return ERR(nError); nError = NSFRemoteConsole (server, szcommand, &hRetInfo); if (nError != NOERROR) { OSLoadString(NULLHANDLE, ERR(nError), szResult, 1024); CutFlag(szResult,0x13); NotesTerm(); return (ERR(nError)); } pBuffer = OSLock (char, hRetInfo); strcpy(szResult,pBuffer); OSUnlock (hRetInfo); OSMemFree (hRetInfo); NotesTerm(); return (NOERROR); }
void NotesCheck(STATUS nError) { if(nError == NOERROR) return; char h[256]; OSLoadString(GetModuleHandle(NULL), ERR(nError), h, 255); Exclamation(h); abort(); }
void NPrintError( JNIEnv *env, STATUS err ) { if( err!=NOERROR ) { // Get the notes error msg char buffer[512]; OSLoadString( NULLHANDLE, (STATUS)err, buffer, WORD(sizeof(buffer))-1 ); jint errorCode = (jint)err; jprintln(buffer); } }
DWORD CLotusNote::LogLotusErrorMsg(STATUS sr,char* msg) { if (msg != NULL) glog.log_strings(LOG_ERROR,msg); if (sr != NOERROR) { glog.log_strings(LOG_ERROR,"Lotus message ->",false); OSLoadString(NULLHANDLE,ERR(sr),m_err_msg,sizeof(m_err_msg)); OSTranslate(OS_TRANSLATE_LMBCS_TO_NATIVE,m_err_msg,sizeof(m_err_msg),m_err_msg,sizeof(m_err_msg)); glog.log_strings(LOG_ERROR,m_err_msg); } return ERR_API; }
char* CLNotesError::getErrorString(STATUS ecode) { if (ecode != NOERROR) { int len; OSLoadString(NULLHANDLE,ERR(ecode),m_err_str,sizeof(m_err_str)-1); len = strlen(m_err_str); OSTranslate(OS_TRANSLATE_LMBCS_TO_NATIVE,m_err_str,len,m_err_str,len); } else *m_err_str = 0; return m_err_str; }
bool NCheck( JNIEnv *env, STATUS err ) { if( err!=NOERROR ) { // Get the notes error msg char buffer[512]; OSLoadString( NULLHANDLE, (STATUS)err, buffer, WORD(sizeof(buffer))-1 ); jint errorCode = (jint)err; ThrowErrorRelease(env,buffer,err); jprintln(buffer); return false; } return true; }
void PrintAPIError (STATUS api_error) { STATUS string_id = ERR(api_error); char error_text[200]; WORD text_len; /* Get the message for this Lotus C API for Domino and Notes error code from the resource string table. */ text_len = OSLoadString (NULLHANDLE, string_id, error_text, sizeof(error_text)); /* Print it. */ fprintf (stderr, "\n%s\n", error_text); }
extern "C" _declspec (dllexport) BOOL Init(const char * strParas, char * szRet, int& nSize) { AFX_MANAGE_STATE(AfxGetStaticModuleState()); STATUS nStatus = NOERROR; CString strServerName=_T(""); CString strUserAccount=_T(""); CString strPassWord=_T(""); CStringList lstParas; MakeStringListByChar(lstParas,strParas); strServerName = GetValueFromList("_ServerName",lstParas); strUserAccount = GetValueFromList("_UserAccount",lstParas); strPassWord = GetValueFromList("_PassWord",lstParas); char szResult[1024*10]={0}; char szServer[1024]={0}; strcpy(szServer,strServerName); HANDLE hhandle =CreateMutex(NULL,FALSE,"Global\\SiteView-Lotus-Montior"); if(hhandle ==NULL) { DWORD nlast; nlast =GetLastError(); sprintf(szRet,"error=CreateMutex Failed code is %d", nlast); nSize = static_cast<int>(strlen(szRet)); return FALSE; } WaitForSingleObject(hhandle,INFINITE); WritePassword(strPassWord); nStatus = NotesInitExtended (0, NULL); if (nStatus != NOERROR) { ReleaseMutex(hhandle); CloseHandle(hhandle); OSLoadString(NULLHANDLE, ERR(nStatus), szResult, 1024); CutFlag(szResult,0x13); sprintf(szRet,"error=Can't Init Notes Extended:%s", szResult); nSize = static_cast<int>(strlen(szRet)); return FALSE; } nStatus=NF_Command(szServer,"show server",szResult); if(nStatus != NOERROR) { ReleaseMutex(hhandle); CloseHandle(hhandle); sprintf(szRet,"error=Can't Connect to Server:%s", szResult); nSize = static_cast<int>(strlen(szRet)); NotesTerm(); return FALSE; } NotesTerm(); sprintf(szRet,"Connected to Server[%s]", szServer); nSize = static_cast<int>(strlen(szRet)); ReleaseMutex(hhandle); CloseHandle(hhandle); return TRUE; }
BOOL NSF_List(CString strServer, CString strDirectory, CStringList &lstTexts, CStringList &lstValues, char* szReturn) { char szFullNetPath[MAXPATH] = ""; /* full network path */ DBHANDLE dir_handle; /* handle for directory */ STATUS error = NOERROR; /* return status from API calls */ error = NotesInitExtended (0, NULL); if (error) { OSLoadString(NULLHANDLE, ERR(error), szReturn, 1024); return FALSE; } if (strDirectory != _T("")) { strcpy(szFullNetPath, strDirectory.GetBuffer(0)); } if(strServer != _T("")) { // Compose the full network pathname to the directory. if (error = OSPathNetConstruct(NULL, strServer.GetBuffer(0), strDirectory.GetBuffer(0), szFullNetPath)) { OSLoadString(NULLHANDLE, ERR(error), szReturn, 1024); NotesTerm(); return FALSE; } } // Open the directory. if (error = NSFDbOpen (szFullNetPath, &dir_handle)) { OSLoadString(NULLHANDLE, ERR(error), szReturn, 1024); NotesTerm(); return FALSE; } /* Call NSFSearch to find files in the directory. For each file found, call an action routine. */ if (error = NSFSearch ( dir_handle, /* directory handle */ NULLHANDLE, /* selection formula */ NULL, /* title of view in formula */ SEARCH_FILETYPE + /* search for files */ SEARCH_SUMMARY, /* return a summary buffer */ FILE_DBANY + /* find any .NS? file */ FILE_DIRS + /* find subdirectories */ FILE_NOUPDIRS, /* don't find the ".." dir */ NULL, /* starting date */ file_action_list, /* call for each file found */ &lstTexts, /* argument to action routine */ NULL)) /* returned ending date (unused) */ { OSLoadString(NULLHANDLE, ERR(error), szReturn, 1024); NSFDbClose (dir_handle); NotesTerm(); return FALSE; } /* Close the directory. */ if (error = NSFDbClose (dir_handle)) { OSLoadString(NULLHANDLE, ERR(error), szReturn, 1024); NotesTerm(); return FALSE; } /* Terminate Domino and Notes. */ NotesTerm(); POSITION pos=NULL; pos = lstTexts.GetHeadPosition(); while(pos) { lstValues.AddTail(lstTexts.GetNext(pos)); } return TRUE; }
_declspec ( dllexport ) WORD ATOM_OSLoadString(HMODULE hModule, STATUS error, char *retBuffer, WORD bufferLen) { return OSLoadString(hModule, error, retBuffer, bufferLen); }