- 在线时间
- 1957 小时
- 最后登录
- 2024-6-29
- 注册时间
- 2004-4-26
- 听众数
- 49
- 收听数
- 0
- 能力
- 60 分
- 体力
- 40957 点
- 威望
- 6 点
- 阅读权限
- 255
- 积分
- 23862
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 20501
- 主题
- 18182
- 精华
- 5
- 分享
- 0
- 好友
- 140
TA的每日心情 | 奋斗 2024-6-23 05:14 |
|---|
签到天数: 1043 天 [LV.10]以坛为家III
 群组: 万里江山 群组: sas讨论小组 群组: 长盛证券理财有限公司 群组: C 语言讨论组 群组: Matlab讨论组 |
< >bool CopyToClipboard(AnsiString file)
, w, |* O4 |7 p' c2 V0 @. Z{
* C: c5 O& r/ H int nLen;
7 f N, C, N: H V0 X) x char* Data;
! `0 z# d0 q2 V HANDLE hMem;</P>, |% k1 H0 i: I8 v7 c X2 l
< > if (file.IsEmpty()) return false;</P>
- ^- c9 ^3 J" M# o9 S< > nLen = 20 + file.Length() + 2;/ d8 \" w2 d1 n, q7 t, l% H
hMem = GlobalAlloc(GMEM_MOVEABLE
+ o6 ~# c7 [& q6 e; S/ H |GMEM_DDESHARE|GMEM_ZEROINIT,- d/ Y) L! y2 C% q$ P
nLen);
0 N6 _6 m% k5 C if (hMem==NULL) return false; / J/ Z0 p5 K5 f W
/*Data = (char*)GlobalLock(hMem); a& f" h: O" F' D4 Z/ y0 L- ~" U
*(DWORD*)Data = 20;
( e$ N# t* `8 e1 H3 s2 y strcpy(Data+20, file.c_str());
. x5 o3 m0 I# V' l8 X GlobalUnlock(hMem);*/# C% N+ e6 S. {/ Y+ h6 ?
if (OpenClipboard(NULL)) {
7 V! `2 P/ ~, u6 c5 D( C EmptyClipboard(); //加上这一句 4 E: J; i+ P4 n6 V$ g& @! w
if (SetClipboardData(4 H) N1 \+ M( S( _
CF_TEXT,hMem)!=0)
8 F* R+ _/ B2 l1 N hMem = NULL;4 o3 d0 I# B, n5 M
CloseClipboard();
1 I5 e8 L' ~7 a" ?! k% d) ?4 v9 L" x a5 ] }+ Z. H( B0 Q1 |# w5 G( S( B: G9 D* m
if (hMem) GlobalFree(hMem); </P>5 I1 d3 B6 Y- ]" k Q. q/ T. N& V$ A
< > return hMem ? false : true;0 w( d( \0 v: c. B& q6 l
} </P>3 C( o* z T2 q
< >void __fastcall TForm1::Button1Click(TObject *Sender)
! W) q4 U: X9 f8 S- B) z{0 m+ V- a' g9 n6 }5 t( ]+ j5 Q
CopyToClipboard(Edit1->Text);! Q( w* Z, R% I' u% c# K
GetClipboardData(CF_OEMTEXT);+ z4 a" A) V9 f. z& @ q' t7 Q. U5 @
}
6 b+ ]1 ^8 V; _' E C$ b//---------------------------------------------------------------------------
1 O0 T9 I: ~, qCB6+update4在windows2000下通过!</P> |
zan
|