I/O Error 65?(100分)

  • 主题发起人 主题发起人 Kingron
  • 开始时间 开始时间
字符串匹配函数

function MatchStrings(source, pattern: String): Boolean;
; var
; pSource: Array [0..255] of Char;
; pPattern: Array [0..255] of Char;

; function MatchPattern(element, pattern: PChar): Boolean;
; ; function IsPatternWild(pattern: PChar): Boolean;
; ; ; var
; ; ; t: Integer;

; ; begin
; ; ; Result := StrScan(pattern,'*') <> nil;
; ; ; if not Result then Result := StrScan(pattern,'?') <> nil;
; ; end;

; begin
; ; if 0 = StrComp(pattern,'*') then
; ; ; Result := True
; ; else if (element^ = Chr(0)) and (pattern^ <> Chr(0)) then
; ; ; Result := False
; ; else if element^ = Chr(0) then
; ; ; Result := True
; ; else begin
; ; ; case pattern^ of
; ; ; '*': if MatchPattern(element,@pattern[1]) then
; ; ; ; ; ; ;Result := True
; ; ; ; ; ;else
; ; ; ; ; ; ;Result := MatchPattern(@element[1],pattern);
; ; ; '?': Result := MatchPattern(@element[1],@pattern[1]);
; ; ; else
; ; ; ; if element^ = pattern^ then
; ; ; ; ; Result := MatchPattern(@element[1],@pattern[1])
; ; ; ; else
; ; ; ; ; Result := False;
; ; ; end;
; ; end;
; end;

begin
; StrPCopy(pSource,source);
; StrPCopy(pPattern,pattern);
; Result := MatchPattern(pSource,pPattern);
end;
 
模拟自动打键

Easy!要不要一个超级函数啊!^_^
 
各位,不是自动打键,也不是什么其他的,我就是想知道为什么帮助上面明明说明可以做到,但是
就是做不出来?利用WM_KEY消息进行Repeat 输入!
 
这个问题有必要讨论吗??????
 
那位把WM_CHAR的问题翻译成英文?我的E文太弱。
谢谢了。
 
好了,各位:
到Borland新闻组问了一下,得到的答复是:不可以。其答复意思如下:
1)当按下一个Key的时候,发生一个WM_KEYDOWN消息,如果按住不放,会产生若干个WM_KEYDOWN消息
当松开Key的时候,发生一个WM_KEYUP消息,然后Windows会合成一个WM_CHAR消息
2)如果要实现Auto Repeat的功能,必须用PostMessage发送若干个WM_KEYDOWN消息!最后发送一个
WM_KEYUP消息。
因此,单纯用一个WM_KEYDOWN和利用lKEyData设置重复次数是不可以的。

P.S:但是我始终以为可以做到,只不过目前还没有人知道作?

就此结贴吧。
 
后退
顶部