:c:func:`MsiGetSummaryInformation`. *count* is the maximum number of updated
values.
+.. method:: Database.Close()
+
+ Close the database object, through :c:func:`MsiCloseHandle`.
+
+ .. versionadded:: 3.7
.. seealso::
`MSIDatabaseOpenView <https://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msidatabaseopenview.asp>`_
`MSIDatabaseCommit <https://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msidatabasecommit.asp>`_
`MSIGetSummaryInformation <https://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msigetsummaryinformation.asp>`_
+ `MsiCloseHandle <https://msdn.microsoft.com/en-us/library/windows/desktop/aa370067(v=vs.85).aspx>`_
.. _view-objects:
PyObject_Del(msidb);
}
-static PyObject*
-msiobj_close(msiobj* msidb, PyObject *args)
-{
- MsiCloseHandle(msidb->h);
- msidb->h = 0;
- Py_RETURN_NONE;
-}
-
static PyObject*
msierror(int status)
{
return NULL;
}
+static PyObject*
+msidb_close(msiobj* msidb, PyObject *args)
+{
+ int status;
+ if ((status = MsiCloseHandle(msidb->h)) != ERROR_SUCCESS) {
+ return msierror(status);
+ }
+ msidb->h = 0;
+ Py_RETURN_NONE;
+}
+
/*************************** Record objects **********************/
static PyObject*
PyDoc_STR("Commit() -> None\nWraps MsiDatabaseCommit")},
{ "GetSummaryInformation", (PyCFunction)msidb_getsummaryinformation, METH_VARARGS,
PyDoc_STR("GetSummaryInformation(updateCount) -> viewobj\nWraps MsiGetSummaryInformation")},
+ { "Close", (PyCFunction)msidb_close, METH_NOARGS,
+ PyDoc_STR("Close() -> None\nWraps MsiCloseHandle")},
{ NULL, NULL }
};