如何断开文件连结? WNetCancelConnection2NetSessionDel 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 TO masterz():我基本上就把MSDN的例子复制下来,但是如下调用NetSessionDel()不成功,错误说ClientNameNotFound。可是,如果把NetSessionDel()的第二个参改成NULL,就可以成功了。请你再帮帮我,指点指点,谢谢! LPSESSION_INFO_10 pBuf = NULL; LPSESSION_INFO_10 pTmpBuf; DWORD dwLevel = 10; DWORD dwPrefMaxLen = -1; DWORD dwEntriesRead = 0; DWORD dwTotalEntries = 0; DWORD dwResumeHandle = 0; DWORD i; DWORD dwTotalCount = 0; LPTSTR pszServerName = NULL; LPTSTR pszClientName = NULL; LPTSTR pszUserName = NULL; NET_API_STATUS nStatus; do // begin do { nStatus = NetSessionEnum(NULL/*pszServerName*/, NULL/*pszClientName*/, NULL/*pszUserName*/, dwLevel, (LPBYTE*)&pBuf, dwPrefMaxLen, &dwEntriesRead, &dwTotalEntries, &dwResumeHandle); // // If the call succeeds, // if ((nStatus == NERR_Success) || (nStatus == ERROR_MORE_DATA)) { if ((pTmpBuf = pBuf) != NULL) { // // Loop through the entries. // for (i = 0; (i < dwEntriesRead); i++) { ASSERT(pTmpBuf != NULL); if (pTmpBuf == NULL) { fprintf(stderr, "An access violation has occurred\n"); break; } // // Print the retrieved data. // wprintf(L"\n\tClient: %s\n", pTmpBuf->sesi10_cname); wprintf(L"\tUser: %s\n", pTmpBuf->sesi10_username); TRACE("\tActive: %d\n", pTmpBuf->sesi10_time); TRACE("\tIdle: %d\n", pTmpBuf->sesi10_idle_time); DWORD d=::NetSessionDel(NULL,pTmpBuf->sesi10_cname,pTmpBuf->sesi10_username); if(d!=NERR_Success) { ::AfxMessageBox("Error"); } pTmpBuf++; dwTotalCount++; } } } // // Otherwise, indicate a system error. // else fprintf(stderr, "A system error has occurred: %d\n", nStatus); // // Free the allocated memory. // if (pBuf != NULL) { NetApiBufferFree(pBuf); pBuf = NULL; } } // // Continue to call NetSessionEnum while // there are more entries. // while (nStatus == ERROR_MORE_DATA); // end do // Check again for an allocated buffer. // if (pBuf != NULL) NetApiBufferFree(pBuf); // // Print the final count of sessions enumerated. // fprintf(stderr, "\nTotal of %d entries enumerated\n", dwTotalCount); 我想断开与本机相连的所有计算机为什么用NetSessionDel(NULL,NULL,NULL)返回87(参数不正确)的错误代码? hook IE的SEND,RECV等函数问题 子窗体鼠标单击消息处理完了怎么传递给父窗体 关于combobox获取下拉值的一个问题。 求救!怎么样在vbscript脚本里调用VC写的dll了? regsvr32的问题!!!!!! 一个自定义类的实例如何向使用它的控件发消息? 如何让一个单文档程序一开始就最大化? 请教高手,从剪贴版提出METAFILE的问题! vc中的怪问题 高分求助ActiveX控件制作的问题,很急!!!!! 菜鸟问题 各位大哥,帮帮忙,愿意给满分!!
LPSESSION_INFO_10 pTmpBuf;
DWORD dwLevel = 10;
DWORD dwPrefMaxLen = -1;
DWORD dwEntriesRead = 0;
DWORD dwTotalEntries = 0;
DWORD dwResumeHandle = 0;
DWORD i;
DWORD dwTotalCount = 0;
LPTSTR pszServerName = NULL;
LPTSTR pszClientName = NULL;
LPTSTR pszUserName = NULL;
NET_API_STATUS nStatus; do // begin do
{
nStatus = NetSessionEnum(NULL/*pszServerName*/,
NULL/*pszClientName*/,
NULL/*pszUserName*/,
dwLevel,
(LPBYTE*)&pBuf,
dwPrefMaxLen,
&dwEntriesRead,
&dwTotalEntries,
&dwResumeHandle);
//
// If the call succeeds,
//
if ((nStatus == NERR_Success) || (nStatus == ERROR_MORE_DATA))
{
if ((pTmpBuf = pBuf) != NULL)
{
//
// Loop through the entries.
//
for (i = 0; (i < dwEntriesRead); i++)
{
ASSERT(pTmpBuf != NULL); if (pTmpBuf == NULL)
{
fprintf(stderr, "An access violation has occurred\n");
break;
}
//
// Print the retrieved data.
//
wprintf(L"\n\tClient: %s\n", pTmpBuf->sesi10_cname);
wprintf(L"\tUser: %s\n", pTmpBuf->sesi10_username);
TRACE("\tActive: %d\n", pTmpBuf->sesi10_time);
TRACE("\tIdle: %d\n", pTmpBuf->sesi10_idle_time); DWORD d=::NetSessionDel(NULL,pTmpBuf->sesi10_cname,pTmpBuf->sesi10_username);
if(d!=NERR_Success)
{
::AfxMessageBox("Error");
}
pTmpBuf++;
dwTotalCount++;
}
}
}
//
// Otherwise, indicate a system error.
//
else
fprintf(stderr, "A system error has occurred: %d\n", nStatus);
//
// Free the allocated memory.
//
if (pBuf != NULL)
{
NetApiBufferFree(pBuf);
pBuf = NULL;
}
}
//
// Continue to call NetSessionEnum while
// there are more entries.
//
while (nStatus == ERROR_MORE_DATA); // end do // Check again for an allocated buffer.
//
if (pBuf != NULL)
NetApiBufferFree(pBuf);
//
// Print the final count of sessions enumerated.
//
fprintf(stderr, "\nTotal of %d entries enumerated\n", dwTotalCount);