受不了bcb了,给我一个使用它的理由吧

yanyanyanyan 2004-06-20 10:19:24

取的网页内容,使用M$ wininet 控件
Delphi 中只要一句

Memo1.Text :=Inet1.OpenURL ('http://www.aaa.com/bbb.asp',0);

VB中也是同样的一句


看看bcb,一堆代码,编译通过,调试出错

谁能给一个bcb调用wininet控件的例子啊?

OleVariant url= "http://www.aaa.com/bbb.asp";
AnsiString datatype=(long)0;
Inet1->OpenURL(url,sTov(datatype));


}
//---------------------------------------------------------------------------


OleVariant __fastcall TForm1::sTov(AnsiString str1)
{
//TODO: Add your source code here
char *str2;
OleVariant myvar;
str2=str1.c_str();
int n=StrLen(str2);
myvar=VarArrayCreate(OPENARRAY(int,(0,n-1)),varByte);
for(int i=0;i<n;i++)
myvar.PutElement(str2[i],i);
return myvar;

}
...全文
991 51 打赏 收藏 转发到动态 举报
写回复
用AI写文章
51 条回复
切换为时间正序
请发表友善的回复…
发表回复
yanyanyanyan 2004-06-22
  • 打赏
  • 举报
回复
多谢各位的指导和帮助
现在只有一个问题了(其实也不是什么大问题),就是bcb6下按F9调试时,弹出的cpu窗口,是怎么回事?
bcb5下没有任何问题。
yanyanyanyan 2004-06-22
  • 打赏
  • 举报
回复
Release 后 一切正常,就是调试时不行。
robbyzi 2004-06-22
  • 打赏
  • 举报
回复
呵呵,楼主的一百分就引来了几十个回复。。
强~~~

不过言归正传,COM控件的内存越界,的确是有点麻烦的。。

呵呵,Release一下看看可不可以??
MEFULEU 2004-06-21
  • 打赏
  • 举报
回复
忘了说,我用的是bcb5;
MEFULEU 2004-06-21
  • 打赏
  • 举报
回复
错了;是可以的;

}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
Memo1->Text=Inet1->OpenURL("http://www.h2e.com.cn",0);
}
//---------------------------------------------------------------------------
MEFULEU 2004-06-21
  • 打赏
  • 举报
回复
嘿,我这怎么不会出错;怪事;不过好像没有效果!

//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "InetCtlsObjects_OCX"
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
Inet1->OpenURL("http://www.csdn.com",0);
}
//---------------------------------------------------------------------------
hear_rain 2004-06-21
  • 打赏
  • 举报
回复
SailorTPM 的经理真是一个好人,欣赏!

使用BCB的理由?我就是不想用VC而已
yanyanyanyan 2004-06-21
  • 打赏
  • 举报
回复
to Kandy(济沧海)

那个控件试过的,我要读取的网页要cookies的,直接用 IdHTTP1不行的,得到的网页代码是登录信息,我不清楚要发送什么cookie

而wininet不需要。
yesry 2004-06-21
  • 打赏
  • 举报
回复
我正在编写工具检测这个。
yesry 2004-06-21
  • 打赏
  • 举报
回复
CPU窗口的出现的确让我们很是烦恼,又不知道哪里出错了。但是总结经验,我发现凡是调用COM都会出现的,凡是读超界也会出现的。这样推理,会不会微软的bug,内存读超界了?
真如实观 2004-06-21
  • 打赏
  • 举报
回复
zaqizaba(渣渣)说的有道理,怪得这个贴子人气这么好!
netying 2004-06-21
  • 打赏
  • 举报
回复
mark.
Kandy 2004-06-21
  • 打赏
  • 举报
回复
请问各位大虾都没试过
IdHTTP1->Get(URL);
么?
IndyClient里面的IdHTTP,只一句GET,满足不了各位的需求吗?有些人不要老是叫,请在叫之前给自己胡乱叫嚣的理由再叫。
zaqizaba 2004-06-21
  • 打赏
  • 举报
回复
我知道了,要想引出高手来回答你的问题,就先鄙视他用的语言,引他发怒,他就会用他强大的实力来解决你的问题以证明他用的语言的优越性。。。
呵呵,开个玩笑
yanyanyanyan 2004-06-21
  • 打赏
  • 举报
回复
wininet 控件就是 vs6 带的Microsoft Internet Transfer Control 6.0 (SP6)
可以放到form上,vb和delphi下没有问题。现在编译后运行也不会有问题。
就是调试时会进入cpu窗口,再按两下F9,又正常执行了。

可能是 dutousuan(独头蒜)所说,导入时源程被加入了断点
我在写一个网络程序,用bcb自带的fast net 下的http 控件还要处理cookies,用wininet就不需要。
jishiping 2004-06-21
  • 打赏
  • 举报
回复
没有用过这个控件,所以也无法测试。Inet1 是里托放到Form上的控件吗?如果不是,那么
你给这个变量分配控件了吗?如果是直接托放到Form上的控件,或者里已经用 new 给它分
配空间了的话,那么这样试试看,
TVariant type(0);
TVariant url("http://www.aaa.com.cn");
TVariant aaa = Inet1->OpenURL(url, type);
Memo1->Text = AnsiString(aaa);
murouwolf 2004-06-21
  • 打赏
  • 举报
回复
bcb用了一个月速度太慢扔垃圾堆然后检了个delphi用发现编译速度比VC快控件也好用学了一个月最后决定两个一起用安逸
dutousuan 2004-06-21
  • 打赏
  • 举报
回复
你需要手动修改一下 倒入的程序 把提示去掉,具体是记不太清,再加上try catch
  • 打赏
  • 举报
回复
bcb就是简单,举个例子,自动控制上要动态的显示系统的响应曲线,他的一个控件足以应付。这样可以把大部分的时间放在要解决的问题上。当然这不一定是程序员的感觉。南理工自动化系的几个教研室里面研究生至少80%用bcb!
CCLIS 2004-06-21
  • 打赏
  • 举报
回复
哈哈,难得看到季老大骂人。
加载更多回复(31)

13,822

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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