C++Builder 程序员博客
8 Sep
6.0下使用ShowModal来打开form ,使用ModalResult = mrOk关闭,反复几次后必定报异常access violation ….
TfilteringFm *Frm = new TfilteringFm(this);
if(mrOk == Frm->ShowModal())
{
}
A
我在A处加一句
delete Frm;
后,反复的打开关闭才不出错,使用Frm->Close()都不行
原因不明
使用 delete Frm;
也不行啊
你找找其他原因吧,我一般都是向你说的那样用的,用完就delete,从来没有出过向你说的这种错误
按你上面的代码,是没有问题的,我觉得应该是你TfilteringFm这个窗口的问题,你检查下里面的变量释放,
因为我也是这样用的,如果创建的窗口释放内存没问题,你这个代码应该不会出错的
新建个空的窗体 去试试 就知道问题了
重启了一次,又没有了
发现可能是由ComboBox引起的,我在属性栏里的iterms预先写入一些值,就会出错
如果在form的构造函数里动态的给ComboBox添加就不会出错了
7 Sep
有两种二进制文件,后缀名分别是.dat和.bin,要将他们存入sqlserver,然后再取出来,存到硬盘上。文件大小在1KB左右。这个应该怎么做。
主要问题是:
存储这种文件的sqlserver中的数据类型是什么?
这种文件读写数据库的方式是怎么样的?
从数据库中读出来以后,再在硬盘上创建对应的文件,这个又该怎么做?
楼上的很强悍啊,随便哪个帖子都敢回复。很有水源大牛的风采。
<
跟着妖哥瞎混,呵呵
7 Sep
怎么使用RasSetEntryProperties可以设置IPSec预共享密钥?
RASENTRY re;哪个属性是设置密钥的?
谢谢
高手呢?
自己顶起来。
这个贴子其实早都看到了,只是查了RASENTRY的定义,里面跟本就没有,共同关注
我也从MSDN看了,有找吧本网络编程的书对该结构人解析。都没找到。
我再一次顶起来
我的贴子啊!沉下了!!
多谢,有你“牺牲了今天的午休时间”这句话,先结贴给分,现在没空测试,改天再测。
17 Aug
大家好.
我是C++爱好者,并处于学习之中.
以前学和用过Delphi,感觉不错.
但是我更喜欢C++,用过了半年的VC,感觉..唉.
MFC真的不如VCL,差远了.请恕我直言,因为宝地为BCB专区..
我很想学习和使用BCB,从08年到现在都有这个愿望,可是
安装完又卸载,卸载完过了许久又安装,正处于徘徊期.
原因有几点,资源少,用的人少,甚至新手都不知道如何入门..
但是我坚信!就像刚刚看到的某位大牛所说,时间可以证明一切!
我愿意去学BCB,希望各位高手或者朋友能告诉我如何使用这个开发工具吗?
比如说,AnsiString,他到底是类呢,还是什么东东?
我刚才查阅一些资料,AnsiString转char*是c_str();
可是晕晕的..
还有个问题,怎么使用集合?
DynamicArray?
那是模板还是函数还是什么东东?
另外哪里找一些资源和例子呢?甚至是指引新手入门的东西?
没有也罢,但是请各位朋友告诉我,怎么把delphi的翻译成BCB的也中啊..
还有,Delphi的所有类在BCB都可以使用吗?
谢谢各位达人~打扰了!
对了,还有,为啥Delphi的控件比BCB多了好多呢?这是为什么呢?!
学任何语言,最好都先从“Hello ,Word!"开始
学过dephi,就当作C语言版本的dephi吧!
AnsiString 为了和dephi的String统一的一个字符串操作的类
<
30 Jul
SQL*PLUS中的copy是一功能非常强大的数据复制命令.它虽然可以在sql>提示符下使用,但不属于SQL语句,因此,BCB中的的ADOQUERY组件不能直接使用.要想使用这个copy命令,在BCB中应该怎样完成.
copy的命令格式:
COPY {FROM database | TO database | FROM database TO database} {APPEND|CREATE|INSERT|REPLACE} destination_table [(column, column, column, …)]
USING query
ADO连接的时候用SQL*PLUS的驱动 试试
<
过江项羽和季世平还有TR,Wingsun他们等等,想当年是这里的中流砥柱。年轻人是不了解的。
<
<
28 Jul
StringGrid的列允许MOVE,即goColMoving设为true,也就是说列可以拖动,可是StringGrid的数据50ms刷新一次,数据刷新方式是StringGrid->Cells[col][Row] = data,当列移动后,数据一刷新,显示的列就错了,怎么办啊?
有人回帖吗?期待中。。。。。
StringGrid1->Options = StringGrid1->Options<<goColMoving;
或者在设计时将StrinGrid的Options属性中的goColMoving设为True
这样操作是不会有问题的 不知道你怎么搞的
拖动没有问题啊,关键是拖动后,用StringGrid->Cells[col][Row] = data写数据时,每列的数据就不对了啊
拖动以后,写新数据的时候,坐标有没有更新,是不是还写在原来的行或列了
<
是因为拖动后,列发生了变化,而写的时候没有变化,那么我怎么知道列的变化情况,拖动用户是随意的啊
总算有点明白你的意思了. 比如当用户拖动第二列改变了列的顺序以后, 你再写入StringGrid时, 本来应该显示在第2列的数据, 结果显示到其他列中了. 是这个意思吧.
响应StringGrid的OnColumnMoved事件, FromIndex就是原来的列索引, ToIndex是移动后的索引.
根据这两个参数, 动态调整你写StringGrid格子的代码.
呵呵,来个例子嘛,马上结贴
为了这五六分花时间写个例子似乎有点不值得.
妖哥,还真小气!呵呵,给你15分如何?
要快点哦,不要被人抢了
这不是小气的问题, 我在CBuilder版块得分超过12万了还在乎这五六分?
关键是现在的提问者, 结帖时一般都是平均分配分数, 不管答案是否正确. 这样会误导很多人, 到底哪个是正确答案? 都正确吗? 既然都正确那就不必写什么例子代码了.
妖哥啊,我每次结贴都是按照答案是否正确与否给分的,我知道像你这样的大人物,帮助了很多的人,论坛里全是你的美誉,希望你给一个例子的代码哦,先谢谢了!
其实昨天就帮你写好例子了. 不过今天看了看还有点小BUG需要再完善一下. 明天发给你吧.
呵呵,非常感谢!!!
妖哥,你太强了,我用StringGrid1ColumnMoved搞了一天,也搞不定,谢谢谢谢!!!
马上结贴,虽然少点也是意思吗,因为我太菜了,很穷哦,呵呵!
28 Jul
StringGrid的列允许MOVE,即goColMoving设为true,也就是说列可以拖动,可是StringGrid的数据50ms刷新一次,数据刷新方式是StringGrid->Cells[col][Row] = data,当列移动后,数据一刷新,显示的列就错了,怎么办啊?
有人回帖吗?期待中。。。。。
StringGrid1->Options = StringGrid1->Options<<goColMoving;
或者在设计时将StrinGrid的Options属性中的goColMoving设为True
这样操作是不会有问题的 不知道你怎么搞的
拖动没有问题啊,关键是拖动后,用StringGrid->Cells[col][Row] = data写数据时,每列的数据就不对了啊
拖动以后,写新数据的时候,坐标有没有更新,是不是还写在原来的行或列了
<
是因为拖动后,列发生了变化,而写的时候没有变化,那么我怎么知道列的变化情况,拖动用户是随意的啊
总算有点明白你的意思了. 比如当用户拖动第二列改变了列的顺序以后, 你再写入StringGrid时, 本来应该显示在第2列的数据, 结果显示到其他列中了. 是这个意思吧.
响应StringGrid的OnColumnMoved事件, FromIndex就是原来的列索引, ToIndex是移动后的索引.
根据这两个参数, 动态调整你写StringGrid格子的代码.
呵呵,来个例子嘛,马上结贴
为了这五六分花时间写个例子似乎有点不值得.
妖哥,还真小气!呵呵,给你15分如何?
要快点哦,不要被人抢了
这不是小气的问题, 我在CBuilder版块得分超过12万了还在乎这五六分?
关键是现在的提问者, 结帖时一般都是平均分配分数, 不管答案是否正确. 这样会误导很多人, 到底哪个是正确答案? 都正确吗? 既然都正确那就不必写什么例子代码了.
妖哥啊,我每次结贴都是按照答案是否正确与否给分的,我知道像你这样的大人物,帮助了很多的人,论坛里全是你的美誉,希望你给一个例子的代码哦,先谢谢了!
其实昨天就帮你写好例子了. 不过今天看了看还有点小BUG需要再完善一下. 明天发给你吧.
呵呵,非常感谢!!!
妖哥,你太强了,我用StringGrid1ColumnMoved搞了一天,也搞不定,谢谢谢谢!!!
马上结贴,虽然少点也是意思吗,因为我太菜了,很穷哦,呵呵!
27 Jul
StringGrid的列允许MOVE,即goColMoving设为true,也就是说列可以拖动,可是StringGrid的数据50ms刷新一次,数据刷新方式是StringGrid->Cells[col][Row] = data,当列移动后,数据一刷新,显示的列就错了,怎么办啊?
有人回帖吗?期待中。。。。。
StringGrid1->Options = StringGrid1->Options<<goColMoving;
或者在设计时将StrinGrid的Options属性中的goColMoving设为True
这样操作是不会有问题的 不知道你怎么搞的
拖动没有问题啊,关键是拖动后,用StringGrid->Cells[col][Row] = data写数据时,每列的数据就不对了啊
拖动以后,写新数据的时候,坐标有没有更新,是不是还写在原来的行或列了
<
是因为拖动后,列发生了变化,而写的时候没有变化,那么我怎么知道列的变化情况,拖动用户是随意的啊
总算有点明白你的意思了. 比如当用户拖动第二列改变了列的顺序以后, 你再写入StringGrid时, 本来应该显示在第2列的数据, 结果显示到其他列中了. 是这个意思吧.
响应StringGrid的OnColumnMoved事件, FromIndex就是原来的列索引, ToIndex是移动后的索引.
根据这两个参数, 动态调整你写StringGrid格子的代码.
呵呵,来个例子嘛,马上结贴
为了这五六分花时间写个例子似乎有点不值得.
妖哥,还真小气!呵呵,给你15分如何?
要快点哦,不要被人抢了
这不是小气的问题, 我在CBuilder版块得分超过12万了还在乎这五六分?
关键是现在的提问者, 结帖时一般都是平均分配分数, 不管答案是否正确. 这样会误导很多人, 到底哪个是正确答案? 都正确吗? 既然都正确那就不必写什么例子代码了.
妖哥啊,我每次结贴都是按照答案是否正确与否给分的,我知道像你这样的大人物,帮助了很多的人,论坛里全是你的美誉,希望你给一个例子的代码哦,先谢谢了!
其实昨天就帮你写好例子了. 不过今天看了看还有点小BUG需要再完善一下. 明天发给你吧.
呵呵,非常感谢!!!
妖哥,你太强了,我用StringGrid1ColumnMoved搞了一天,也搞不定,谢谢谢谢!!!
马上结贴,虽然少点也是意思吗,因为我太菜了,很穷哦,呵呵!
23 Jul
线程里调用dll,dll相应的头文件有消息的定义: #define WM_DIAL_MSG WM_USER+101
我在线程头文件里定义了:
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(WM_DIAL_MSG,TMessage,UpdateCaption8_mes);
END_MESSAGE_MAP(TThread);
报错如下:
[C++ Error] Registry.hpp(71): E2040 Declaration terminated incorrectly
为什么会有这个我看不懂的错?是不是END_MESSAGE_MAP(TThread)有问题?求高手解决,谢谢
看起来没有明显的错误.
你可曾修改过头文件registry.hpp?
没有修改
struct TRegKeyInfo
{
int NumSubKeys;
int MaxSubKeyLen;
int NumValues;
int MaxValueLen;
int MaxDataLen; //这行出错
_FILETIME FileTime;
} ;
有谁能帮我解决啊?
那就是你的工程代码中有某处代码有问题了.尝试将部分代码注释,然后编译,看是否还提示.
线程类里不能直接使用消息映射,楼主可以生成一个隐藏窗口,在隐藏窗口的窗口过程里处理消息。
头文件:
#ifndef Unit1H
#define Unit1H
//—————————————————————————
#include <Classes.hpp>
//—————————————————————————
class TMyThread : public TThread
{
private:
HWND m_hwnd;
//隐藏窗口过程
void __fastcall HidenWndProc(TMessage &Msg);
protected:
void __fastcall Execute();
public:
__fastcall TMyThread(bool CreateSuspended);
};
//—————————————————————————
#endif
//cpp文件:
__fastcall TMyThread::TMyThread(bool CreateSuspended)
: TThread(CreateSuspended)
{
//设置隐藏窗口即过程
m_hwnd = AllocateHWnd( HidenWndProc );
}
//—————————————————————————
//隐藏窗口过程
void __fastcall TMyThread::HidenWndProc(TMessage &Msg)
{
}
//—————————————————————————
void __fastcall TMyThread::Execute()
{
//—- Place thread code here —-
}
//—————————————————————————
mark。。学习!~~
支持fxworld
VCL_MESSAGE_HANDLER(WM_DIAL_MSG,TMessage,UpdateCaption8_mes);多了一个分号吧!印象中好像定义这些事不用写分号的。
学习一下
应该是ThinkHand说的那样,头文件定义的消息映射中不能有分号
<
自己构造消息泵
回复ThinkHand:
应该要分号,帮助文档里就有分号。
楼主用的那个版本的啊!我在6和2010下定义的都不用“;”的,说明书是什么地方带的,我学习一下。
fdsffewfwefqfwef
23 Jul
请教一个问题,在 CppWebBrowser中打开一个网页,会报js错误。而在浏览器中打开该网页,却不会报js错误。该如何处理,使js错误提示不弹出来,谢谢。
补充下,CppWebBrowser(IE),我用的浏览器(360浏览器)不会弹出js错误。如果用IE打开,也会报js错误。
有办法解决吗?谢谢
好像没什么办法,应该是网页的问题。。。