HttpOpenRequestA函数的疑问

cifueast 2009-05-23 07:33:26
Private Declare Function Http创建请求 Lib "wininet.dll" Alias "HttpOpenRequestA" (ByVal Internet连接句柄 As Long, 访问方式 As String, 页面路径 As String, 协议版本 As String, 引用页 As String, 识别类型 As String, ByVal dwFlags As Long, ByVal dwContext As Long) As Long


在调用这个api的过程中需要对其参数 dwFlags 传递数值2147483648.而vb中long类型最大长度是2147483647,所以无法调用,会发生溢出错误,不知道该任何解决...

HTTP请求句柄 = Http创建请求(Internet连接句柄, "", 页面地址, "HTTP/1.1", "", "", 2147483648#, 0)
...全文
199 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
simon__sun 2009-05-23
  • 打赏
  • 举报
回复
2147483648 对应vb中long值应该是负值-2147483648
给你个转换算法

Public Function uLngToLng(uNo As Double) As Long
If uNo > 2147483647 Then
uLngToLng = uNo - 2147483647 - 2147483649#
Else: uLngToLng = uNo
End If
End Function
PctGL 2009-05-23
  • 打赏
  • 举报
回复

其实没必要过分追求形式上的数据类型, 你知道是2147483648 ,那就按long声明,直接传那个数就行了

1,488

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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