The ITableData::HrDeleteRows method deletes multiple table rows.
HRESULT HrDeleteRows(
ULONG ulFlags,
LPSRowSet lprowsetToDelete,
ULONG FAR * cRowsDeleted
);
The ITableData::HrDeleteRows method locates and removes the table rows containing the columns that match the property pointed to by the lpProps member of each aRow entry in the row set. An index column is used to identify each row; this column must have the same property tag as the property tag passed in the ulPropTagIndexColumn parameter in the call to CreateTable.
The number of rows that were actually deleted is returned in cRowsDeleted. No error is returned if one or more rows could not be found.
After the rows are deleted, notifications are sent to all clients or service providers with a view of the table and that have called the table's IMAPITable::Advise method to register for notifications.
Deleting rows does not reduce the columns available to existing table views or subsequently opened table views, even if the rows deleted were the last with values for a specific column.
CreateTable, ITableData::HrDeleteRow, ITableData::HrModifyRows, SRowSet, TABLE_NOTIFICATION