/***************************************************************************** DestroySession *****************************************************************************/ APIERR DestroySession( const TCHAR * pszServer ) { APIERR err; TCHAR szShare[MAX_PATH]; strcpyf( szShare, pszServer ); strcatf( szShare, SZ("\\IPC$") ); err = NetUseDel( NULL, (LPTSTR)szShare, USE_NOFORCE ); return err; } // DestroySession
// @pymethod |win32net|NetUseDel|Ends connection to a shared resource. PyObject * PyNetUseDel(PyObject *self, PyObject *args) { // @pyparm string/<o PyUnicode>|server||The name of the server, or None. // @pyparm string/<o PyUnicode>|useName||The share name // @pyparm int|forceCond|0|Level of force to use. Can be USE_FORCE or USE_NOFORCE or USE_LOTS_OF_FORCE WCHAR *szServer = NULL; WCHAR *szName = NULL; PyObject *obUseName, *obServer; PyObject *ret = NULL; int forceCond = 0; DWORD err = 0; if (!PyArg_ParseTuple(args, "OO|i", &obServer, &obUseName, &forceCond)) return NULL; if (!PyWinObject_AsWCHAR(obServer, &szServer, TRUE)) goto done; if (!PyWinObject_AsWCHAR(obUseName, &szName, FALSE)) goto done; err = NetUseDel(szServer, szName, (DWORD)forceCond); if (err) { ReturnNetError("NetUseDel",err); goto done; } ret = Py_None; Py_INCREF(Py_None); done: PyWinObject_FreeWCHAR(szServer); PyWinObject_FreeWCHAR(szName); return ret; // @pyseeapi NetUseDel }
bool CScannerNetBios::CloseSession() { m_NetApiStatus=NetUseDel(NULL, m_wszResource, USE_LOTS_OF_FORCE); if(m_NetApiStatus==NERR_Success) return true; else return false; }