如果你遇到疑难解决不了的问题,请告诉我!看看我能不能帮上忙!谢绝小菜问题!
解决方案 »
- 利用dbgrideh的SelectedRows和GotoBookmark批量形成字符串
- 定做款 针对注册类网页的 填表工具
- 三层访问问题
- 报告版主:这个贴子很有可能就是盗分!随便拷了个答案,就得100分!天啊~,结贴的怎么是这个样子的
- 请教一个串口里判断地址位的问题
- 征集网站命名。。。。,进者有分
- 送100分:) 请教Cell控件的键盘响应方法
- 客户端如何动态获得更改后的数据
- 那位有转货币大小写的代码,我查过没有,有一片文章有关但有问题,谢谢!
- 用什么方法可以把文本中的指定内容导入到ACCESS数据库中!注意:
- 曾经最爱的前女友来找我,而我现在的女友也很好。我该怎么办?唉
- 讨论一下怎么看别人写的代码吧
如果会的话加我MSN:[email protected]
我的 msn:[email protected]
qq:19556494
,等你回信息。多谢了。
偶的QQ:109160408
typedef struct s_pdfobject {
uint16 ioType; /* Input/Output */
uint16 ioDirection; /* File/Callback/Memory */
PDFSIZET nLen; /* (Bytes to encode)/(Bytes written) */ union {
LPMEMBUF lpMemBuffer;
struct {
LPFNPDFIO lpfnCallback;
LPVOID lpAppArg;
} func;
struct {
FILEHANDLE hFile;
FILEPOS nInitPos;
Bool fMustClose;
} file;
struct {
LPMEMBUF lpMem; /* For CF_TEXT clipboard input */
uint16 fmtOutput; /* API definition for output format */
} clip;
} access;
Bool fIsHuge;
LPVOID lpState; /* internal state information/buffer */} PDFObject;
typedef PDFObject FAR *LPPDFObject;Bool PDFAPI MakeMemoryObject( LPPDFObject lpObj, uint16 ioDirection, LPVOID lpBase );在delphi中的調用定義如下:
Type
pTPDFObj=^TPDFOBJ ; TPDFOBJ =record
ioType: Integer; // Input/Output
ioDirection: Integer; // File/Callback/Memory
nLen:Double; // (Bytes to encode)/(Bytes written) // Type specific information storage
dummy1 :Double;
dummy2 :Double;
dummy3 :Double;
dummy4 :Double;
dummy5 :Double; dummy6 :Double;
dummy7 :Double;
end;Function MakeMemoryObject(lpObj : pTPDFObj; var ioDirection : Integer; lpBase : Variant) : Integer;stdcall;external 'PDFENC32.DLL' name 'MakeMemoryObject';調用:
function TForm1.EncodeSourceFile:Boolean;
var
nErrCode:Integer;
ObjInput:pTPDFObj;
begin
Result:=True; ObjInput:=new(pTPDFObj);
try
nErrCode:=MakeFileNameObject(ObjInput,PDFINPUT,pChar (SourceFileName));
if nErrCode<0 then
begin
ShowMessage('Encode Error!');
Result:=False ;
end;
finally
dispose(ObjInput);
end;
end;
end;可是無論怎樣調用都出錯,不知道我的定義對不對,謝謝幫忙,不勝感謝!
已经等了好久了,没人答。
请帮忙,谢谢。
希望你解决后能通报一下解决方法..
MSN:[email protected]
问题在于如何给用户(不懂SQL语句)提供一个直观的操作界面,让他知道如何将L1,L2,L3按照他心中所想的样子组织在一起,我还可以根据他组合后的东西(有可能是个字符串表达式或是一个图形)解析成WHERE子句,各位有什么好办法,望不吝赐教
[email protected]
最后我还要用delphi自己写一个烧录程序.
请大哥帮帮小弟,谢谢你
最后我还要用delphi自己写一个烧录程序.
请大哥帮帮小弟,谢谢你
[email protected]
应该会用到
GetActiveWindows(0)
SetWindowLong(handle, GWL_EXSTYLE,)//
GetWindowLong(handle, GWL_EXSTYLE); 再设置
附聊天纪录:2003-06-06 14:45:03 ⊙○⊙
这个错误题是:
Project VisualRadder.exe raised exception class EAssertionFailed with message 'Call DeactiveFontsInfo before calling this,(C:\SDK\VCL\SynEdit1.1\Source\SynTextDrawer.pas,line 490)', Process stopped. Use step or Run to continue2003-06-06 14:45:57 ⊙○⊙
这一句:
ASSERT(1 = PheSharedFontsInfo(FFontsInfo[FFontsInfo.Count - 1])^.RefCount);2003-06-06 14:46:09 ⊙○⊙
哈切在么?2003-06-06 14:47:20 哈欠
没在没在。。2003-06-06 14:48:19 ⊙○⊙
知不知道到底是怎么回事啊~~~~
我的程序仅仅使用了SynEdit,但是我只把程序打开后关闭就出现了那个断言失败的异常,我还没有对SynEdit进行任何操作啊2003-06-06 14:49:48 哈欠
信息不足,无法判断。没有用过那什么synedit...嘿嘿。。2003-06-06 14:50:03 ⊙○⊙
呵呵~~我在SourceForge找到了最新版本的SynEdit,我看看2003-06-06 14:50:45 哈欠
490行那些语句是什么?2003-06-06 14:50:56 ⊙○⊙
是:
ASSERT(1 = PheSharedFontsInfo(FFontsInfo[FFontsInfo.Count - 1])^.RefCount);
2003-06-06 14:52:22 哈欠
字体信息在这之前就已经被Deactive。
2003-06-06 14:52:34 ⊙○⊙
这....2003-06-06 14:52:45 哈欠
只是程序打开关闭?2003-06-06 14:52:57 ⊙○⊙
是啊~本来没有那个错误。2003-06-06 14:54:25 哈欠
不管它,嘿嘿不在DELPHI中用有没有这个异常?
2003-06-06 14:54:33 ⊙○⊙
只是我在IDE的属性编辑器里面添加了一个TdxInspectorTextButtonRow,就出现了一个异常,后来检查,是Dev Express的开发人员的错误。
他们写了一句经典的错误代码“if (value=nil) or (value.empty) then”,我改正之后,那个问题就不存在了,但是SynEdit却出现了错误2003-06-06 14:55:39 哈欠
是DELPHI6以上控件?2003-06-06 14:55:48 ⊙○⊙
用的D6版本~2003-06-06 14:58:59 哈欠
有些东西就算知道原因也烦人,还是弄新版本的下来吧。2003-06-06 15:00:00 ⊙○⊙
我以为我找到了最新版~~~可是居然是1.03(最近更新是2000年),还是在SourceForge找到的,我用的是1.1~~算了,我还是用这个版本,不过把所有的断言都注释掉2003-06-06 15:10:32 ⊙○⊙
还是没有用~~~~去掉了断言,带来了更多的问题。2003-06-06 15:12:34 哈欠
有精力的话就一点点分析原因吧。。断言只是告诉你信息,
2003-06-06 15:12:50 ⊙○⊙
哎~~这个问题总计花了我6天时间了2003-06-06 15:13:33 哈欠
问题是出在字体信息的引用计数上。。也就是共享字体信息上。。2003-06-06 15:14:37 ⊙○⊙
可是我发现好像是SynEdit写的错误代码,我修改之后,SynEdit的错误没有了,但是出现了好多什么非法访问内存xxxx的错误
while FFontsInfo.Count > 0 do
begin
ASSERT(1 = PheSharedFontsInfo(FFontsInfo[FFontsInfo.Count - 1])^.RefCount);
ReleaseFontsInfo(PheSharedFontsInfo(FFontsInfo[FFontsInfo.Count - 1]));
end;
2003-06-06 15:14:58 ⊙○⊙
while FFontsInfo.Count > 0 do
我改为
while FFontsInfo.Count > 1 do
就没有问题了2003-06-06 15:15:31 ⊙○⊙
前段时间没有那种问题的2003-06-06 15:16:13 哈欠
前段时间没有问题?2003-06-06 15:16:40 ⊙○⊙
是啊~我怀疑是DevExpress Inspector和SynEdit的冲突2003-06-06 15:17:11 哈欠
两样东西我都没有用过。。
2003-06-06 15:17:17 ⊙○⊙
就是这句有问题:
childType:=xmlNode.attributes.getNamedItem('name').text;
if (CompareText('TFont',childType)=0) then
begin
node1:=AddNode(Parent,Inspector,TdxInspectorTextRow);2003-06-06 15:17:30 ⊙○⊙
如果将TdxInspectorTextRow改为TdxInspectorTextButtonRow就会有问题。2003-06-06 15:18:02 ⊙○⊙
但~~~~从继承关系上来说,那两个类是兄弟关系啊~~~
那句代码是我写的,我敢保证100%没有错误2003-06-06 15:20:05 ⊙○⊙
我原来以为是TdxInspectorTextRow无法创建在非顶层的地方,然后我就将LoadFromType这个方法(就是上面的代码所在的方法)的前几句改为:
AddNode(nil,objInspector,TdxInspectorTextButtonRow);却没有问题。
甚至是
AddNode(AddNode(nil,objInspector,TdxInspectorTextButtonRow),objInspector,TdxInspectorTextButtonRow)
这样非顶层也没有问题。2003-06-06 15:21:04 哈欠
ADDNODE是什么东东的ADDNODE?2003-06-06 15:21:18 ⊙○⊙
这个AddNode也是我写的,用来创建一个节点。
第一个参数是Parent,第二个参数是指定创建到哪个Inspector控减上,第三个指定类型2003-06-06 15:21:39 ⊙○⊙
代码很简单:
function AddNode(Parent:TdxInspectorRowNode;Inspector:TdxInspector;RowType:TdxInspectorRowClass):TdxInspectorRowNode;
begin
if Assigned(Parent) then
Result:=Parent.AddChildEx(RowType)
else
Result:=Inspector.AddEx(RowType);
end;2003-06-06 15:22:39 哈欠
晕。。看不出有什么问题。。2003-06-06 15:23:24 ⊙○⊙
的确没有问题~~~~我做了好多试验,都跟我原来猜测的原因相违背。值得出一个结论:Inspector控件和SynEdit有奇怪的冲突2003-06-06 15:27:00 哈欠
信息不足。无法判断,嘿嘿。
如果不行,那么自己写代码,插入部分倒也好写,那删除部分呢,如何写???