• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > 我想好像VB那样发送一个URL,VC要怎么做?

我想好像VB那样发送一个URL,VC要怎么做?

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了你看起来好像很好吃,我好像在哪见过你,肛门好像痔疮,好像劳保眼镜,好像造句等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 我想好像VB那样发送一个URL,VC要怎么做?
描述:

我同学做了一个VB,发一个URL好简单喔,所以想请教一下,用VC要怎样才能得到同样的效果?
下面是我同学的VB源码:
Option Explicit
Private Declare Function InitCommonControls Lib "COMCTL32" () As Long
Dim Http  As New XMLHTTP
Function UrlEncode(strUrl As String) As String '对发送内容加密(可有可无)
    Dim I As Integer, J As Integer, a() As Byte, strChar As String, strText As String
    strText = ""
    For I = 1 To Len(strUrl)
        strChar = Mid(strUrl, I, 1)
        Select Case Asc(strChar)
            Case 48 To 57, 65 To 90, 97 To 122, 42, 45, 46, 64, 95
                strText = strText & strChar
            Case 32
                strText = strText & "+"
            Case Else
                a = StrConv(strChar, vbFromUnicode)
                For J = LBound(a) To UBound(a)
                    strText = strText & "%" & Right("00" & Hex(a(J)), 2)
                Next
                Erase a()
        End Select
    Next
    UrlEncode = strText
End Function
                                                                    
Private Sub CmdSend_Click()
    Dim sUrl As String
    sUrl = "https://fetionAPI.appspot.com/api/?from=" + TxtFrom.Text + "&pw=" + TxtPass.Text + "&to=" + TxtTo.Text + "&msg=" + UrlEncode(TxtMessage.Text)
    With Http '通过HTTP
        .Open "GET", sUrl, False '运行
        .send '发送
        Label5.Caption = "状态:" + .responseText '接收发送情况
    End With
End Sub
                                                                         
Private Sub Form_Initialize() '初始化程序
    InitCommonControls
End Sub


解决方案1:


//****************************************************************************************//
//函数 GetWebContent
//主要功能: 
//参数列表: 
//         1、CString strURL:
//返回值: 
//备注: 
//****************************************************************************************//
CString GetWebContent(CString strURL, CString strDesc)
{
    CString strSentence;
    CString strRet = "";
    //    CInternetSession sess;//Create session
    CInternetSession sess("Super_Spider");//Create session//Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
//    sess.SetOption(INTERNET_OPTION_CONNECT_TIMEOUT, 20000);   
//    sess.SetOption(INTERNET_OPTION_CONTROL_SEND_TIMEOUT, 10000);
//    sess.SetOption(INTERNET_OPTION_DATA_RECEIVE_TIMEOUT, 10000);
//    sess.SetOption(INTERNET_OPTION_DATA_SEND_TIMEOUT, 10000);
//    sess.SetOption(INTERNET_OPTION_CONNECT_RETRIES, 1);
    CHttpFile* fileGet;
    try
    {
        fileGet = (CHttpFile*)sess.OpenURL(strURL);//Open file
    }
    catch(...)
    {
        fileGet = 0;
        strDesc.Format("访问网络出错,错误号:%d", GetLastError());
        return "";
    }
    if(fileGet)
    {
        DWORD dwStatus;
        DWORD dwBuffLen = sizeof(dwStatus);
        BOOL bSuccess = fileGet->QueryInfo(
            HTTP_QUERY_STATUS_CODE|HTTP_QUERY_FLAG_NUMBER,
            &dwStatus, &dwBuffLen);
        CString strType;
        fileGet->QueryInfo(HTTP_QUERY_CONTENT_TYPE, strType);
        if(strType.Find("text/html") < 0)//不是网页数据
            bSuccess = false;
        if( bSuccess && dwStatus>=  200 && dwStatus < 300 ) 
        {
         &n
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 好像不算这里的是,但是因不放心,这里也放,每个10分,一共10个
  • 我想好像VB那样发送一个URL,VC要怎么做?

相关文章

  • 2017-06-04 如何去掉IE"DownloadFile"打开/保存确认框?---高手请进!
  • 2017-06-05 SoapConnector无法创建成功,com初始化没有问题。请教?
  • 2017-06-04 在vb里面编译activeXDll遇到的问题,真是奇怪呀
  • 2017-06-04 利用微软SpeechSDK识别WAV文件的问题?
  • 2017-06-04 结构化存储问题(超难)
  • 2017-06-05 手工Marshal不成功,函数调用hang住了请帮我看看
  • 2017-06-04 请版主删除帖子“★★★关于服务端定义的结构★★★”,谢谢。
  • 2017-06-05 系统关闭时候,发给每个进程什么消息啊?
  • 2017-06-04 ADO数据库句柄数和线程数的问题,打开数据库时线程、句柄增加,关闭数据库时线程和句柄没有降完。
  • 2017-06-04 类对象的实例和类的实例有什么区别??

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • vcactivex传出对象数组给javascript的问题
    • 控件嵌入网页问题……
    • 高分求教:MFCActiveXControlWizard创建OCX控件,如何添加一个可用别的语言(如VB或者C#)访问到的类(比如用这个类建立对象,调用类方
    • 发行ActiveX控件,除了OCX还需要什么文件
    • uafxcwlibappcoreobj:errorLNK2001:unresolvedexternalsymbol___wargv?
    • 如何在一个vc写的ocx中,调用bcb写的ocx
    • 关于自动调用excel的问题?
    • 关于线程创建对话框
    • 用Netmeeting的SDK时,完成的程序是不是一定要启动NETMEETING??可不可以不要启动?
    • 在线程函数中调用CoInitializeEx编译出错

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有