原来BCB6已封装WEB上传文件功能,咳,从没见谁提过!

BCB 2004-12-06 09:14:28
我爱用BCB,连做网页也用BCB编CGI,用得挺顺的,但文件上传功能一直没见解决,借助于PHP
混合编程更麻烦.就在我下了决心,自已用BCB编程解决文件上传问题,就在成功庆祝时,偶然
发现,BCB6已封装了文件上传处理功能,一:未见别人提过,二,我曾查过BCB6的邦助不知为何
就是没有发觉这部分;活见鬼.现把代码贴出,供大家参考.
...全文
345 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
BCB 2004-12-07
  • 打赏
  • 举报
回复
用BCB开发CGI,好象大家都不感兴趣,我已习惯用它了,
robbyzi 2004-12-06
  • 打赏
  • 举报
回复
的确啊~~~~

用BCB来写CGI真的不十分爽。。

谢谢楼主了。。

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

PS:楼主在水中憋了很久,终于冒了个泡~~@
GaoLun 2004-12-06
  • 打赏
  • 举报
回复
很久没有见楼主吐泡泡了
特招 2004-12-06
  • 打赏
  • 举报
回复
up
BCB 2004-12-06
  • 打赏
  • 举报
回复
用BCB编CGI的人不多,其实用它很间单
wilsonloveada 2004-12-06
  • 打赏
  • 举报
回复
谢谢,收藏!
BCB 2004-12-06
  • 打赏
  • 举报
回复
白白花了我几个星期的时间.
tccsdn 2004-12-06
  • 打赏
  • 举报
回复
收藏
zjsyw 2004-12-06
  • 打赏
  • 举报
回复
谢谢
BCB 2004-12-06
  • 打赏
  • 举报
回复
这是这个部分:
Request->Files->Count;
Rquest->Files->Items[i]->FileName;
Request->Files->Items[i]->Stream;
BCB 2004-12-06
  • 打赏
  • 举报
回复
#include "Forms.hpp" // 没有它会说 Appication没定义
#include "SysUtils.hpp"
#include "webUnit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TWebModule1 *WebModule1;
//---------------------------------------------------------------------------
__fastcall TWebModule1::TWebModule1(TComponent* Owner)
: TWebModule(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TWebModule1::WebModule1WebActionItem1Action(
TObject *Sender, TWebRequest *Request, TWebResponse *Response,
bool &Handled)
{
String ExeName=Application->ExeName;
if (ExeName.SubString(1,4)=="\\\\?\\")
ExeName=ExeName.SubString(5,ExeName.Length()-4);
// 解决 win2003server 出现的怪现象
String CurDir=ExtractFilePath(ExeName);
String dir=CurDir+"temp\\";

String str="";
try
{
int n=Request->Files->Count; // 上传文件总数
str+="Files Count: "+String(n)+"\n";
for (int i=0;i<n;i++)
{
String var=Request->Files->Items[i]->FieldName;
String f=ExtractFileName(Request->Files->Items[i]->FileName);
str+=var+"="+f+"\n";
if (f!="")
{
TStream *fs=Request->Files->Items[i]->Stream;
if (!DirectoryExists(dir))
ForceDirectories(dir);
TFileStream *tf=new TFileStream(dir+f,fmCreate);
tf->CopyFrom(fs,0);
delete tf;
}
}
}
catch(...)
{
str="No file uploaded!\n";
}
String err="";
Response->Content="<html><body><pre>"+str+err+
"</pre></body></html>";

}
//
JackLucifer 2004-12-06
  • 打赏
  • 举报
回复
mark
BoweirrKing 2004-12-06
  • 打赏
  • 举报
回复
这个功能目前还用不到, mark一下。
BeRoy 2004-12-06
  • 打赏
  • 举报
回复
hao
  • 打赏
  • 举报
回复
现在有时间 写下如何用BCB开发CGI网页系统 发布到你的Blog中
milkwayhong 2004-12-06
  • 打赏
  • 举报
回复
good

13,825

社区成员

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

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