如何调用api中的RasEnumConnections

2736 2005-11-24 02:38:26
对api不熟悉,请高手指点
代码如下:
[DllImport("rasapi32.dll", SetLastError=true,CharSet=CharSet.Auto)]
public static extern int RasEnumConnections(RASCONN lprasconn,int lpcb,int lpcConnections);
const int RAS_MaxDeviceType = 16;//设备类型名称长度
const int RAS_MaxEntryName = 256;//连接名称最大长度
const int RAS_MaxDeviceName = 128;//设备名称最大长度
const int RAS_MaxIpAddress = 15;//IP地址的最大长度

[StructLayout(LayoutKind.Sequential,CharSet = CharSet.Auto)]
public struct RASCONN
{
public int dwSize;
public int hrasconn;
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=RAS_MaxEntryName + 1)]
public string szEntryName;
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=RAS_MaxDeviceType + 1)]
public string szDeviceType;
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=RAS_MaxDeviceName + 1)]
public string szDeviceName;
}
public Form1()
{
RASCONN lprasConnAA;
lprasConnAA.dwSize=412;
lprasConnAA.hrasconn=0;
lprasConnAA.szDeviceName="";
lprasConnAA.szDeviceType="";
lprasConnAA.szEntryName="";
int lpcb = 0;
lpcb=256*lprasConnAA.dwSize;
int lpcConnections = 0;
int nRet = 0;
//下面这一句通不过,请高手看看如何改
nRet = RasEnumConnections(lprasConnAA, lpcb,lpcConnections);

if(nRet != 0)
{
for (int i=0;i<lpcConnections;i++)
{
// RasHangUp(lprasConnAA.hrasconn);
}
}


//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();


}
...全文
223 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
JzeroBiao 2005-11-24
  • 打赏
  • 举报
回复
如何解决了?贴出代码~~
2736 2005-11-24
  • 打赏
  • 举报
回复
自己已解决。锲尔不舍,方能成功。
JasonHeung 2005-11-24
  • 打赏
  • 举报
回复
public static extern int RasEnumConnections(ref RASCONN lprasconn,int lpcb,int lpcConnections);

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧