本文整理汇总了C++中LPIDENT::fIsAggregate方法的典型用法代码示例。如果您正苦于以下问题:C++ LPIDENT::fIsAggregate方法的具体用法?C++ LPIDENT::fIsAggregate怎么用?C++ LPIDENT::fIsAggregate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LPIDENT
的用法示例。
在下文中一共展示了LPIDENT::fIsAggregate方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GetPreferencesInfo
BOOL GetPreferencesInfo (LPIDENT lpi, LPTSTR pszPath, WORD *pwVer)
{
if (lpi == NULL)
return FALSE;
// HKCU\Software\...\SVRMgr + \CellName
//
lstrcpy (pszPath, REGSTR_SETTINGS_PREFS);
lstrcat (pszPath, TEXT("\\"));
lpi->GetCellName (&pszPath[ lstrlen(pszPath) ]);
// HKCU\Software\...\SVRMgr\CellName + \ServerName
//
lstrcat (pszPath, TEXT("\\"));
lpi->GetLongServerName (&pszPath[ lstrlen(pszPath) ]);
*pwVer = wVerSERVER_PREF;
if (lpi->fIsService())
{
// HKCU\Software\...\SVRMgr\CellName\ServerName + \Services\ServiceName
//
lstrcat (pszPath, TEXT("\\"));
lstrcat (pszPath, SERVICES_KW);
lstrcat (pszPath, TEXT("\\"));
lpi->GetServiceName (&pszPath[ lstrlen(pszPath) ]);
*pwVer = wVerSERVICE_PREF;
}
else if (lpi->fIsAggregate())
{
// HKCU\Software\...\SVRMgr\CellName\ServerName + \Aggs\AggregateName
//
lstrcat (pszPath, TEXT("\\"));
lstrcat (pszPath, AGGREGATES_KW);
lstrcat (pszPath, TEXT("\\"));
lpi->GetAggregateName (&pszPath[ lstrlen(pszPath) ]);
*pwVer = wVerAGGREGATE_PREF;
}
else if (lpi->fIsFileset())
{
// HKCU\Software\...\SVRMgr\CellName\ServerName + \Filesets\FilesetName
//
lstrcat (pszPath, TEXT("\\"));
lstrcat (pszPath, FILESETS_KW);
lstrcat (pszPath, TEXT("\\"));
lpi->GetFilesetName (&pszPath[ lstrlen(pszPath) ]);
*pwVer = wVerFILESET_PREF;
}
return TRUE;
}
示例2: Filesets_ContinueDrag
void Filesets_ContinueDrag (HWND hDlg)
{
if (l.fDragging)
{
LPIDENT lpi = NULL;
HLISTITEM hItemTarget;
DWORD dw = GetMessagePos();
POINT pt = { LOWORD(dw), HIWORD(dw) };
HWND hTarget = WindowFromPoint (pt);
if (hTarget != NULL)
{
POINT ptClient = pt;
ScreenToClient (hTarget, &ptClient);
if ((lpi = IdentifyPoint (hTarget, ptClient, &hItemTarget)) != NULL)
{
if (!lpi->fIsServer() && !lpi->fIsAggregate())
lpi = NULL;
}
}
if (lpi != l.lpiTarget)
{
ImageList_DragLeave (NULL);
if (l.hItemTarget)
{
LPARAM dwFlags = FastList_GetItemFlags (l.hwndTarget, l.hItemTarget);
FastList_SetItemFlags (l.hwndTarget, l.hItemTarget, dwFlags & (~FLIF_DROPHIGHLIGHT));
l.hItemTarget = NULL;
l.lpiTarget = NULL;
}
if ((l.lpiTarget = lpi) != NULL)
{
l.hwndTarget = hTarget;
l.hItemTarget = hItemTarget;
LPARAM dwFlags = FastList_GetItemFlags (l.hwndTarget, l.hItemTarget);
FastList_SetItemFlags (l.hwndTarget, l.hItemTarget, dwFlags | FLIF_DROPHIGHLIGHT);
}
ScreenToClient (NULL, &pt);
ImageList_DragEnter (NULL, pt.x, pt.y);
}
ImageList_DragMove (LOWORD(dw), HIWORD(dw));
}
}
示例3: Alert_GetQuickDescription
LPTSTR Alert_GetQuickDescription (LPIDENT lpi)
{
LPTSTR pszStatus = NULL;
size_t cAlerts;
if ((cAlerts = Alert_GetCount (lpi)) <= 1)
pszStatus = Alert_GetDescription (lpi, 0, FALSE);
else if (lpi->fIsServer())
pszStatus = FormatString (IDS_SERVER_MULTIPLE_PROBLEMS, TEXT("%lu"), cAlerts);
else if (lpi->fIsService())
pszStatus = FormatString (IDS_SERVICE_MULTIPLE_PROBLEMS, TEXT("%lu"), cAlerts);
else if (lpi->fIsAggregate())
pszStatus = FormatString (IDS_AGGREGATE_MULTIPLE_PROBLEMS, TEXT("%lu"), cAlerts);
else if (lpi->fIsFileset())
pszStatus = FormatString (IDS_FILESET_MULTIPLE_PROBLEMS, TEXT("%lu"), cAlerts);
return pszStatus;
}
示例4: Filesets_ShowPopupMenu
void Filesets_ShowPopupMenu (HWND hList, POINT ptList, POINT ptScreen)
{
if (!ptScreen.x && !ptScreen.y)
{
RECT rWindow;
GetWindowRect (hList, &rWindow);
ptScreen.x = rWindow.left + (rWindow.right -rWindow.left)/2;
ptScreen.y = rWindow.top + (rWindow.bottom -rWindow.top)/2;
Filesets_ShowParticularPopupMenu (hList, ptScreen, NULL);
}
else if (FL_HitTestForHeaderBar (hList, ptList))
{
HMENU hm = TaLocale_LoadMenu (MENU_COLUMNS);
DisplayContextMenu (hm, ptScreen, hList);
}
else
{
LPIDENT lpi = Filesets_GetFocused (GetParent (hList), &ptList);
if (lpi && (lpi != Filesets_GetSelected (GetParent (hList))))
{
lpi = NULL; // right-click on item other than highlighted one?
}
if (lpi && lpi->fIsFileset())
{
Filesets_ShowParticularPopupMenu (hList, ptScreen, lpi);
}
else if (lpi && lpi->fIsAggregate())
{
Aggregates_ShowParticularPopupMenu (hList, ptScreen, lpi);
}
else if (lpi && lpi->fIsServer())
{
Server_ShowParticularPopupMenu (hList, ptScreen, lpi);
}
else if (!lpi) // display the _NONE menu? (no menu if it's a cell ident)
{
Filesets_ShowParticularPopupMenu (hList, ptScreen, lpi);
}
}
}
示例5: Alert_GetRemedyFunc
LPTSTR Alert_GetRemedyFunc (LPIDENT lpiPrimary, size_t iAlertPrimary, LPIDENT lpiServer)
{
LPOBJECTALERTS lpoa;
if ((lpoa = Alert_GetObjectAlerts (lpiPrimary)) != NULL)
{
switch (lpoa->aAlerts[ iAlertPrimary ].alert)
{
case alertTIMEOUT:
return FormatString (IDS_ALERT_FIX_TIMEOUT);
case alertFULL:
if (lpiPrimary->fIsAggregate())
return FormatString (IDS_ALERT_FIX_AGG_FULL);
else if (lpiPrimary->fIsFileset())
return FormatString (IDS_ALERT_FIX_SET_FULL);
break;
case alertNO_VLDBENT:
return FormatString (IDS_ALERT_FIX_NO_VLDBENT);
case alertNO_SVRENT:
if (lpiPrimary->fIsFileset())
return FormatString (IDS_ALERT_FIX_NO_SVRENT_SET);
else
return FormatString (IDS_ALERT_FIX_NO_SVRENT_AGG);
break;
case alertSTOPPED:
return FormatString (IDS_ALERT_FIX_STOPPED);
case alertBADCREDS:
return FormatString (IDS_ALERT_FIX_BADCREDS);
case alertOVERALLOC:
return FormatString (IDS_ALERT_FIX_AGG_ALLOC);
case alertSTATE_NO_VNODE:
return FormatString (IDS_ALERT_FIX_STATE_NO_VNODE);
case alertSTATE_NO_SERVICE:
return FormatString (IDS_ALERT_FIX_STATE_NO_SERVICE);
case alertSTATE_OFFLINE:
return FormatString (IDS_ALERT_FIX_STATE_OFFLINE);
}
}
return NULL;
}
示例6: Alert_GetObjectAlerts
LPOBJECTALERTS Alert_GetObjectAlerts (LPIDENT lpi, BOOL fAlwaysServer, ULONG *pStatus)
{
LPOBJECTALERTS lpoa = NULL;
if (fAlwaysServer || lpi->fIsServer())
{
LPSERVER_PREF lpsp;
if ((lpsp = (LPSERVER_PREF)lpi->GetServer()->GetUserParam()) != NULL)
{
lpoa = &lpsp->oa;
}
}
else if (lpi->fIsService())
{
LPSERVICE_PREF lpsp;
if ((lpsp = (LPSERVICE_PREF)lpi->GetUserParam()) != NULL)
{
lpoa = &lpsp->oa;
}
}
else if (lpi->fIsAggregate())
{
LPAGGREGATE_PREF lpap;
if ((lpap = (LPAGGREGATE_PREF)lpi->GetUserParam()) != NULL)
{
lpoa = &lpap->oa;
}
}
else if (lpi->fIsFileset())
{
LPFILESET_PREF lpfp;
if ((lpfp = (LPFILESET_PREF)lpi->GetUserParam()) != NULL)
{
lpoa = &lpfp->oa;
}
}
return lpoa;
}
示例7: Server_Salvage_Results_OnInitDialog
void Server_Salvage_Results_OnInitDialog (HWND hDlg, LPIDENT lpiSalvage)
{
TCHAR szServer[ cchNAME ];
lpiSalvage->GetServerName (szServer);
TCHAR szAggregate[ cchNAME ];
if (!lpiSalvage->fIsServer())
lpiSalvage->GetAggregateName (szAggregate);
TCHAR szFileset[ cchNAME ];
if (lpiSalvage->fIsFileset())
lpiSalvage->GetFilesetName (szFileset);
LPTSTR pszTitle;
if (lpiSalvage->fIsServer())
pszTitle = FormatString (IDS_SALVAGE_SVR, TEXT("%s"), szServer);
else if (lpiSalvage->fIsAggregate())
pszTitle = FormatString (IDS_SALVAGE_AGG, TEXT("%s%s"), szServer, szAggregate);
else // (lpiSalvage->fIsFileset())
pszTitle = FormatString (IDS_SALVAGE_SET, TEXT("%s%s%s"), szServer, szAggregate, szFileset);
SetDlgItemText (hDlg, IDC_SALVAGE_TITLE, pszTitle);
FreeString (pszTitle);
}
示例8: Command_OnProperties
void Command_OnProperties (LPIDENT lpi)
{
if (lpi)
{
size_t nAlerts = Alert_GetCount (lpi);
if (lpi->fIsServer())
{
Server_ShowProperties (lpi, nAlerts);
}
else if (lpi->fIsService())
{
Services_ShowProperties (lpi, nAlerts);
}
else if (lpi->fIsAggregate())
{
Aggregates_ShowProperties (lpi, nAlerts);
}
else if (lpi->fIsFileset())
{
Filesets_ShowProperties (lpi, nAlerts);
}
}
}
示例9: DispatchNotification_MainThread
void DispatchNotification_MainThread (NOTIFYEVENT evt, PNOTIFYPARAMS pParams)
{
LPIDENT lpiEvt = pParams->lpi1;
// There are several notifications which are sent when beginning or ending
// lengthy operations. These "actions" each get a window indicating
// progress, and get added to our ongoing list of actions-in-progress.
//
ActionNotification_MainThread (evt, pParams);
// The real reason for this routine is as a dispatcher for the AFSClass's
// notifications: various windows throughout the app register themselves
// with this dispatcher, and thereby get a message whenever a particular
// event of interest to that window happens. Just what notifications
// are "of interest" is specified by the window when it registers with
// this dispatcher.
//
for (size_t iDispatch = 0; iDispatch < nDispatchList; ++iDispatch)
{
if (!aDispatchList[ iDispatch ].hWnd)
continue;
BOOL fDispatch = FALSE;
// WHEN_CELL_OPENED + NULL -> notify if any new cell is opened
// WHEN_OBJECT_CHANGES + NULL -> notify if anything at all changes
// WHEN_OBJECT_CHANGES + lpi -> notify if this object changes
// WHEN_SVCS(etc)_CHANGE + NULL -> notify if any service at all changes
// WHEN_SVCS(etc)_CHANGE + lpi -> notify if any svc on this svr changes
switch (aDispatchList[ iDispatch ].when)
{
case WHEN_CELL_OPENED:
if (evt == evtCreate && lpiEvt->fIsCell())
fDispatch = TRUE;
break;
case WHEN_OBJECT_CHANGES:
if ( (aDispatchList[ iDispatch ].lpiObject == lpiEvt) ||
(aDispatchList[ iDispatch ].lpiObject == NULL) )
{
if (evt != evtCreate)
fDispatch = TRUE;
}
break;
case WHEN_SVRS_CHANGE:
switch (evt)
{
case evtInvalidate:
case evtRefreshServersBegin:
case evtRefreshServersEnd:
if ( (lpiEvt && lpiEvt->fIsCell()) ||
(aDispatchList[ iDispatch ].lpiObject == lpiEvt) ||
(aDispatchList[ iDispatch ].lpiObject == NULL) )
{
if (lpiEvt && lpiEvt->fIsCell())
fDispatch = TRUE;
}
break;
case evtCreate:
case evtDestroy:
case evtRefreshStatusBegin:
case evtRefreshStatusEnd:
case evtAlertsChanged:
if (lpiEvt && lpiEvt->fIsServer())
{
if (aDispatchList[ iDispatch ].lpiObject == NULL)
fDispatch = TRUE;
else
{
LPIDENT lpiEvtCell = lpiEvt->GetCell();
if (aDispatchList[ iDispatch ].lpiObject == lpiEvtCell)
fDispatch = TRUE;
}
}
break;
}
break;
case WHEN_SETS_CHANGE:
switch (evt)
{
case evtInvalidate:
case evtRefreshFilesetsBegin:
case evtRefreshFilesetsEnd:
{
LPIDENT lpiEvtSvr = NULL;
if (lpiEvt && !lpiEvt->fIsCell())
lpiEvtSvr = lpiEvt->GetServer();
if ( (lpiEvt && lpiEvt->fIsCell()) ||
(aDispatchList[ iDispatch ].lpiObject == lpiEvt) ||
(aDispatchList[ iDispatch ].lpiObject == lpiEvtSvr) ||
(aDispatchList[ iDispatch ].lpiObject == NULL) )
{
if (lpiEvt && (lpiEvt->fIsCell() || lpiEvt->fIsServer() || lpiEvt->fIsAggregate()))
fDispatch = TRUE;
//.........这里部分代码省略.........
示例10: DispatchNotification_AltThread
void DispatchNotification_AltThread (NOTIFYEVENT evt, PNOTIFYPARAMS pParams)
{
LPIDENT lpiEvt = pParams->lpi1;
switch (evt)
{
case evtRefreshStatusEnd:
if (lpiEvt && (lpiEvt->fIsService() || lpiEvt->fIsAggregate() || lpiEvt->fIsFileset()))
{
Alert_RemoveSecondary (lpiEvt);
Alert_Scout_QueueCheckServer (lpiEvt);
}
if (lpiEvt && lpiEvt->fIsServer())
{
LPSERVER_PREF lpsp;
if ((lpsp = (LPSERVER_PREF)lpiEvt->GetUserParam()) != NULL)
{
LPSERVER lpServer;
if ((lpServer = lpiEvt->OpenServer()) != NULL)
{
if (lpsp->fIsMonitored != lpServer->fIsMonitored())
{
g.sub = Subsets_SetMonitor (g.sub, lpiEvt, lpServer->fIsMonitored());
UpdateDisplay_ServerWindow (FALSE, lpiEvt);
}
lpsp->fIsMonitored = lpServer->fIsMonitored();
lpServer->Close();
}
}
Alert_Scout_ServerStatus (lpiEvt, pParams->status);
}
break;
// When we get a create request, use the object's Get/SetUserParam()
// methods to attach an allocated structure to the thing--the structure
// contains the preferences for the server/fileset/etc (for instance,
// its warning threshholds, any current scout problems, etc).
// On delete requests, free that structure.
//
case evtCreate:
if (lpiEvt->fIsServer())
{
PVOID pPref = Server_LoadPreferences (lpiEvt);
lpiEvt->SetUserParam (pPref);
// Should this server be monitored?
//
if (!Subsets_fMonitorServer (g.sub, lpiEvt))
{
LPSERVER lpServer;
if ((lpServer = lpiEvt->OpenServer()) != NULL)
{
lpServer->SetMonitor (FALSE);
lpServer->Close();
}
}
Alert_Scout_SetOutOfDate (lpiEvt);
}
else if (lpiEvt->fIsService())
{
PVOID pPref = Services_LoadPreferences (lpiEvt);
lpiEvt->SetUserParam (pPref);
}
else if (lpiEvt->fIsAggregate())
{
PVOID pPref = Aggregates_LoadPreferences (lpiEvt);
lpiEvt->SetUserParam (pPref);
}
else if (lpiEvt->fIsFileset())
{
PVOID pPref = Filesets_LoadPreferences (lpiEvt);
lpiEvt->SetUserParam (pPref);
}
if (!lpiEvt->fIsCell())
{
Alert_Scout_QueueCheckServer (lpiEvt);
}
break;
// When we get a create request, use the object's Get/SetUserParam()
// methods to attach an allocated structure to the thing--the structure
// contains the preferences for the server/fileset/etc (for instance,
// its warning threshholds, any current scout problems, etc).
// On delete requests, free that structure.
//
case evtDestroy:
if (lpiEvt->fIsServer())
{
PVOID pPref = lpiEvt->GetUserParam();
lpiEvt->SetUserParam (0);
if (pPref) Delete (pPref);
}
else if (lpiEvt->fIsService() || lpiEvt->fIsAggregate() || lpiEvt->fIsFileset())
{
Alert_RemoveSecondary (lpiEvt);
PVOID pPref = lpiEvt->GetUserParam();
lpiEvt->SetUserParam (0);
if (pPref) Delete (pPref);
//.........这里部分代码省略.........
示例11: Filesets_DlgProc
//.........这里部分代码省略.........
break;
case WM_RBUTTONDOWN:
if (l.fDragging && !l.fRightBtn)
Filesets_FinishDrag (hDlg, FALSE, FALSE);
break;
case WM_LBUTTONUP:
if (l.fDragging && !l.fRightBtn)
Filesets_FinishDrag (hDlg, TRUE, FALSE);
break;
case WM_RBUTTONUP:
if (l.fDragging && l.fRightBtn)
Filesets_FinishDrag (hDlg, TRUE, TRUE);
break;
case WM_ENDTASK:
LPTASKPACKET ptp;
if ((ptp = (LPTASKPACKET)lp) != NULL)
{
if (ptp->idTask == taskSET_SELECT)
Filesets_OnEndTask_Select (hDlg, ptp);
else if (ptp->idTask == taskSET_BEGINDRAG)
Filesets_OnEndTask_BeginDrag (hDlg, ptp);
else if (ptp->idTask == taskSET_DRAGMENU)
Filesets_OnEndTask_DragMenu (hDlg, ptp);
else if (ptp->idTask == taskSET_MENU)
Filesets_OnEndTask_Menu (hDlg, ptp);
FreeTaskPacket (ptp);
}
break;
case WM_NOTIFY:
switch (((LPNMHDR)lp)->code)
{
case FLN_ITEMSELECT:
if (((LPNMHDR)lp)->hwndFrom == GetDlgItem (hDlg, IDC_SET_LIST))
{
Filesets_OnSelect (hDlg);
}
break;
case FLN_ITEMEXPAND:
if (((LPNMHDR)lp)->hwndFrom == GetDlgItem (hDlg, IDC_SET_LIST))
{
HLISTITEM hItem = ((LPFLN_ITEMEXPAND_PARAMS)lp)->hItem;
LPIDENT lpi = (LPIDENT)FastList_GetItemParam (GetDlgItem (hDlg, IDC_SET_LIST), hItem);
BOOL fExpanded = ((LPFLN_ITEMEXPAND_PARAMS)lp)->fExpanded;
if (lpi && lpi->fIsServer())
{
LPSERVER_PREF lpsp;
if ((lpsp = (LPSERVER_PREF)lpi->GetUserParam()) != NULL)
{
lpsp->fExpandTree = fExpanded;
Server_SavePreferences (lpi);
}
}
else if (lpi && lpi->fIsAggregate())
{
LPAGGREGATE_PREF lpap;
if ((lpap = (LPAGGREGATE_PREF)lpi->GetUserParam()) != NULL)
{
lpap->fExpandTree = fExpanded;
Aggregates_SavePreferences (lpi);
}
}
}
break;
case FLN_BEGINDRAG:
return Filesets_BeginDrag (hDlg, ((LPFLN_DRAG_PARAMS)lp)->fRightButton);
case FLN_LDBLCLICK:
if (((LPNMHDR)lp)->hwndFrom == GetDlgItem (hDlg, IDC_SET_LIST))
{
BOOL fShowProperties = TRUE;
HLISTITEM hItem;
if ((hItem = FastList_GetFocus (GetDlgItem (hDlg, IDC_SET_LIST))) != NULL)
{
if (FastList_FindFirstChild (GetDlgItem (hDlg, IDC_SET_LIST), hItem))
fShowProperties = FALSE;
}
LPIDENT lpi = Filesets_GetFocused (hDlg);
if (lpi && !lpi->fIsCell() && fShowProperties)
{
PostMessage (GetDlgItem (hDlg, IDC_SET_LIST), WM_COMMAND, M_PROPERTIES, 0);
return TRUE;
}
}
break;
}
break;
}
return FALSE;
}
示例12: Alert_GetDescriptionFunc
LPTSTR Alert_GetDescriptionFunc (LPIDENT lpiPrimary, size_t iAlertPrimary, LPIDENT lpiServer, BOOL fFull)
{
LPOBJECTALERTS lpoa;
if ((lpoa = Alert_GetObjectAlerts (lpiPrimary)) != NULL)
{
int ids;
TCHAR szServer[ cchRESOURCE ];
TCHAR szService[ cchRESOURCE ];
TCHAR szAggregate[ cchRESOURCE ];
TCHAR szFileset[ cchRESOURCE ];
switch (lpoa->aAlerts[ iAlertPrimary ].alert)
{
case alertTIMEOUT:
ids = (fFull) ? IDS_ALERT_DESCFULL_TIMEOUT : IDS_ALERT_DESCSHORT_TIMEOUT;
lpiPrimary->GetServerName (szServer);
return FormatString (ids, TEXT("%s%t%e"), szServer, &lpoa->aAlerts[ iAlertPrimary ].aiTIMEOUT.stLastAttempt, lpoa->aAlerts[ iAlertPrimary ].aiTIMEOUT.status);
case alertFULL:
lpiPrimary->GetServerName (szServer);
lpiPrimary->GetAggregateName (szAggregate);
if (lpiPrimary->fIsAggregate())
{
ids = (fFull) ? IDS_ALERT_DESCFULL_AGG_FULL : IDS_ALERT_DESCSHORT_AGG_FULL;
return FormatString (ids, TEXT("%s%s%d%.1B"), szServer, szAggregate, lpoa->aAlerts[ iAlertPrimary ].aiFULL.perWarning, 1024.0 * (double)lpoa->aAlerts[ iAlertPrimary ].aiFULL.ckWarning);
}
else if (lpiPrimary->fIsFileset())
{
ids = (fFull) ? IDS_ALERT_DESCFULL_SET_FULL : IDS_ALERT_DESCSHORT_SET_FULL;
lpiPrimary->GetFilesetName (szFileset);
return FormatString (ids, TEXT("%s%s%s%d%.1B"), szServer, szAggregate, szFileset, lpoa->aAlerts[ iAlertPrimary ].aiFULL.perWarning, 1024.0 * (double)lpoa->aAlerts[ iAlertPrimary ].aiFULL.ckWarning);
}
break;
case alertNO_VLDBENT:
ids = (fFull) ? IDS_ALERT_DESCFULL_NO_VLDBENT : IDS_ALERT_DESCSHORT_NO_VLDBENT;
lpiPrimary->GetServerName (szServer);
lpiPrimary->GetAggregateName (szAggregate);
lpiPrimary->GetFilesetName (szFileset);
return FormatString (ids, TEXT("%s%s%s"), szServer, szAggregate, szFileset);
case alertNO_SVRENT:
if (lpiPrimary->fIsFileset())
{
ids = (fFull) ? IDS_ALERT_DESCFULL_NO_SVRENT_SET : IDS_ALERT_DESCSHORT_NO_SVRENT_SET;
lpiPrimary->GetServerName (szServer);
lpiPrimary->GetAggregateName (szAggregate);
lpiPrimary->GetFilesetName (szFileset);
return FormatString (ids, TEXT("%s%s%s"), szServer, szAggregate, szFileset);
}
else
{
ids = (fFull) ? IDS_ALERT_DESCFULL_NO_SVRENT_AGG : IDS_ALERT_DESCSHORT_NO_SVRENT_AGG;
lpiPrimary->GetServerName (szServer);
lpiPrimary->GetAggregateName (szAggregate);
return FormatString (ids, TEXT("%s%s"), szServer, szAggregate);
}
break;
case alertSTOPPED:
ids = (fFull) ? IDS_ALERT_DESCFULL_STOPPED : IDS_ALERT_DESCSHORT_STOPPED;
lpiPrimary->GetServerName (szServer);
lpiPrimary->GetServiceName (szService);
return FormatString (ids, TEXT("%s%s%t%t%lu"), szServer, szService, &lpoa->aAlerts[ iAlertPrimary ].aiSTOPPED.stStopped, &lpoa->aAlerts[ iAlertPrimary ].aiSTOPPED.stLastError, lpoa->aAlerts[ iAlertPrimary ].aiSTOPPED.errLastError);
case alertBADCREDS:
ids = (fFull) ? IDS_ALERT_DESCFULL_BADCREDS : IDS_ALERT_DESCSHORT_BADCREDS;
lpiPrimary->GetServerName (szServer);
return FormatString (ids, TEXT("%s"), szServer);
case alertOVERALLOC:
lpiPrimary->GetServerName (szServer);
lpiPrimary->GetAggregateName (szAggregate);
ids = (fFull) ? IDS_ALERT_DESCFULL_AGG_ALLOC : IDS_ALERT_DESCSHORT_AGG_ALLOC;
return FormatString (ids, TEXT("%s%s%.1B%.1B"), szServer, szAggregate, 1024.0 * (double)(lpoa->aAlerts[ iAlertPrimary ].aiOVERALLOC.ckCapacity), 1024.0 * (double)(lpoa->aAlerts[ iAlertPrimary ].aiOVERALLOC.ckAllocated));
case alertSTATE_NO_VNODE:
ids = (fFull) ? IDS_ALERT_DESCFULL_STATE_NO_VNODE : IDS_ALERT_DESCSHORT_STATE_NO_VNODE;
lpiPrimary->GetServerName (szServer);
lpiPrimary->GetAggregateName (szAggregate);
lpiPrimary->GetFilesetName (szFileset);
return FormatString (ids, TEXT("%s%s%s%08lX"), szServer, szAggregate, szFileset, lpoa->aAlerts[ iAlertPrimary ].aiSTATE.State);
case alertSTATE_NO_SERVICE:
ids = (fFull) ? IDS_ALERT_DESCFULL_STATE_NO_SERVICE : IDS_ALERT_DESCSHORT_STATE_NO_SERVICE;
lpiPrimary->GetServerName (szServer);
lpiPrimary->GetAggregateName (szAggregate);
lpiPrimary->GetFilesetName (szFileset);
return FormatString (ids, TEXT("%s%s%s%08lX"), szServer, szAggregate, szFileset, lpoa->aAlerts[ iAlertPrimary ].aiSTATE.State);
case alertSTATE_OFFLINE:
ids = (fFull) ? IDS_ALERT_DESCFULL_STATE_OFFLINE : IDS_ALERT_DESCSHORT_STATE_OFFLINE;
lpiPrimary->GetServerName (szServer);
lpiPrimary->GetAggregateName (szAggregate);
lpiPrimary->GetFilesetName (szFileset);
return FormatString (ids, TEXT("%s%s%s%08lX"), szServer, szAggregate, szFileset, lpoa->aAlerts[ iAlertPrimary ].aiSTATE.State);
}
}
return NULL;
//.........这里部分代码省略.........