www.digitalmars.com         C & C++   DMDScript  

D - Advice please

reply "Charles Sanders" <sanders-consulting comcast.net> writes:
Hey all, im trying to develop a C++ and D window kit for Windows, having a
little trouble implementing "MessageSlots" in the C++ version and Im not
sure how else to proceed, ive attached the source, the error message is
pasted at the bottom of WindyLib.cpp ... any advice is super helpful Im a
little bit out of my league.

Thanks all,
C


begin 666 window.h



M:6YG(&U?8VQA<W-.86UE.PT*"7-T9#HZ;6%P/%5)3E0L37-G4VQO=#X ;7-G

M<TYA;64L(%=N9"H <&%R96YT(#T ," I(#H ;5]C;&%S<TYA;64H8VQA<W-.

M8V]N<W0 <W1R:6YG)B!W:6YD;W=.86UE+"  ("!$5T]21"!D=U-T>6QE+"  
M("!I;G0 >"P ("  :6YT('DL("  (&EN="!N5VED=& L("  (&EN="!N2&5I
M9VAT+"  ("!(5TY$(&A7;F1087)E;G0L("  ($A-14Y5(&A-96YU+"  ("!(

M("!G971087)E;G0H*3L-" T*"79O:60 <')E0W)E871E5VEN9&]W*"!$5T]2



M;&5R<UMM<V==(#T
M4D5354Q4("9R=BP 54E.5"!M<V<L(%=005)!32!W<&%R86TL($Q005)!32!L
M<&%R86T *0T*"7L-" D)37-G4VQO="!M<SL-" D):68 *"!M<V=(86YD;&5R


M+2!M7VAW;F0Z)5  ;7-G)7 H)2XJ<RD 6R5X("5X75QN(BP 8V%S="AI;G0I
M;5]H=VYD+"!M<V<L(&=E=$US9TYA;65?<')V*"!M<V< *2P =W!A<F%M+"!L
M<&%R86T *3L-" D)"7)E='5R;B!M<RYP<F]C97-S*"!R=BP =W!A<F%M+"!L



M:68 *"!M<V=(86YD;&5R<RYF:6YD*&-M9"D (3T ;7-G2&%N9&QE<G,N96YD


M9R  2%=.1"!M<V=H=VYD+"!524Y4(&US9RP 5U!!4D%-('=P87)A;2P 3%!!

M9VAW;F0L(&US9RP =W!A<F%M+"!L<&%R86TI.PT*"7T-" T*"6)O;VP :&%N
M9&QE3F]T:69Y37-G*"!,4D5354Q4("9R=BP 3%!.34A$4B!N;W1I9GE0='( 
M*0T*"7L-" D)+R\ =&AI<R!W:6QL('=O<FL ;&EK92!T:&4 8V]M;6%N9"!H
M86YD;&5R<R!B>2!C:&5C:VEN9PT*"0DO+R!N;W1I9GE0='(N8V]D90T*"0DO
M+R!T:&5N(&-A;&QI;F< 82!T<F%N<VQA=&EO;B!C;&%S<R!T:&%T(&-O;G9E
M<G1S('1H90T*"0DO+R!,4$Y-2$12('1O('1H92!R97%U:7)E9"!C;VYT<F]L

M54Q4('-E;F1-<V<H(%5)3E0 ;7-G+"!74$%204T =W!A<F%M+"!,4$%204T 

M;F1S(&%N9"!W86ET<R!F;W( 82!R97-P;VYC90T*"0E,4D5354Q4(')V(#T 
M4V5N9$UE<W-A9V4H(&U?:'=N9"P ;7-G+"!W<&%R86TL(&QP87)A;2 I.PT*


M<R!A;F0 <F5T=7)N<R!W:71H;W5T('=A:71I;F<-" D)4&]S=$UE<W-A9V4H
M"6U?:'=N9"P ;7-G+"!W<&%R86TL(&QP87)A;2 I.PT*"7T-" T*"6)O;VP 
M<V5N9$US9T%S>6YC*"!524Y4(&US9RP 5U!!4D%-('=P87)A;2P 3%!!4D%-


M<F5T=7)N("A396YD365S<V%G94-A;&QB86-K*"!M7VAW;F0L(&US9RP =W!A
M<F%M+"!L<&%R86TL(&-A;&Q"86-K+"!D871A("DA/3 I.PT*"7T-" T*"4Q2
M15-53%0 <V5N9$US9U1I;65O=70H(%5)3E0 ;7-G+"!74$%204T =W!A<F%M
M+"!,4$%204T ;'!A<F%M+"!524Y4(&9L86=S+"!524Y4('1I;65O=70 *0T*
M"7L-" D)1%=/4D0 <F5S=6QT(#T ,#L-" D)4V5N9$UE<W-A9V54:6UE;W5T
M*"!M7VAW;F0L(&US9RP =W!A<F%M+"!L<&%R86TL(&9L86=S+"!T:6UE;W5T


M:6YD;W<H(&U?:'=N9"P <W1A=&4 /R!35U]32$]7(#H 4U=?2$E$12 I.PT*
M"7T-" T*"4Q/3D< 9V5T4W1Y;&4H*2  ('L <F5T=7)N($=E=%=I;F1O=TQO
M;F<H(&U?:'=N9"P 1U=,7U-464Q%("D[('T-" E,3TY'(&=E=$5X4W1Y;&4H
M*2![(')E='5R;B!'9717:6YD;W=,;VYG*"!M7VAW;F0L($=73%]%6%-464Q%
M("D[('T-" T*"79O:60 9V5T5VEN9&]W4W1Y;&4H($Q/3D< )G-T>6QE+"!,

M"0EE>'-T>6QE(#T 9V5T17A3='EL92 I.PT*"7T-" T*"79O:60 861J=7-T


M='EL92 I.PT*"0E!9&IU<W17:6YD;W=296-T17 H("9R96-T+"!S='EL92P 
M:&%S365N=2P 97AS='EL92 I.PT*"7T-" T*"79O:60 <V5T5VEN9&]W5&5X



M=U1E>'1,96YG=& H(&U?:'=N9" I.PT*"0EC:&%R("H =&5X=" ](&YE=R!C
M:&%R6VQE;ET["0D-" D)1V5T5VEN9&]W5&5X=$$H(&U?:'=N9"P =&5X="P 



M"0D)"0ER96-T+G1O<"P-" D)"0D)"7)E8W0N<FEG:'0 +2!R96-T+FQE9G0L
M( T*"0D)"0D)<F5C="YB;W1T;VT +2!R96-T+G1O<"P-" D)"0D)"7)E<&%I

M:6YT('<L(&EN="!H+"!B;V]L(')E<&%I;G0 *0T*"7L-" D)36]V95=I;F1O



M=U)E8W0H(%)%0U0 )G)E8W0 *0T*"7L-" D)1V5T5VEN9&]W4F5C="  ;5]H



M*0T*"7L-" D)4$])3E0 <#L-" D)<"YX(#T >#L <"YY(#T >3L-" D)4V-R

M.PT*"7T-" T*"79O:60 8VQI96YT5&]38W)E96XH(%!/24Y4("9P("D-" E[



M;B  ;5]H=VYD+" F<" I.PT*"0EX(#T
M+R\ 9V5T('1H92!W:6YD;W=S(')E8W0 :6X 8VQI96YT(&-O;W)D<RX-" EV


M(')E8W0N;&5F=#L-
M8W0N;&5F="  /2 P.PT*"0ER96-T+G1O<"  (#T ,#L-
M:60 9V5T5VEN9&]W4&]S:71I;VXH(%)%0U0 )G)E8W0 *0T*"7L-" D)4$])


M=&PN>" ](')E8W0N;&5F=#L-" D)=&PN>2 ](')E8W0N=&]P.PT*"0EB<BYX
M(#T <F5C="YR:6=H=#L-" D)8G(N>2 ](')E8W0N8F]T=&]M.PT*"0E38W)E

M96YT*"!P87)E;G1(=VYD+" F8G( *3L-" D)<F5C="YL969T("  /2!T;"YX

M>#L-" D)<F5C="YB;W1T;VT /2!B<BYY.PT*"7T-" T*"79O:60 <V5T4VEZ



M;&EE;G0H($=E=%!A<F5N="  ;5]H=VYD("DL("9T;" I.PT*"0E-;W9E5VEN
M9&]W*"!M7VAW;F0L('1L+G L('1L+GDL('-I>F4N8W L('-I>F4N8WDL('1R

M("D >PT*"0E3971087)E;G0H(&U?:'=N9"P ;F5W<&%R96YT+FU?:'=N9" I
M.PT*"7T-" T*"0T*"79O:60 :6YV86QI9&%T92 I('L-" D)26YV86QI9&%T


`
end

begin 666 msg.h
M(VEF;F1E9B!-4T=?2 T*(V1E9FEN92!-4T=?2 T*(VEN8VQU9&4 /'=I;F1O
M=W,N:#X-
M(&)O;VP <')O8V5S<R  3%)%4U5,5" F<G8L(%=005)!32!W<&%R86TL($Q0

M<&5D968 3%)%4U5,5" H37-G4VQO=#HZ*G=I;C,R1G5N8RD *$Q215-53%0F





M;V]L('!R;V-E<W,H3%)%4U5,5" F<G8L(%=005)!32!W<&%R86TL($Q005)!


M=VEN,S)&=6YC(%]F=6YC.PT*?3L-" T*8VQA<W, 36]U<V5-<V=3;&]T(#H 
M<'5B;&EC($US9U-L;W0 >PT*<'5B;&EC. T*"4UO=7-E37-G4VQO="AM;W5S

M;V]L('!R;V-E<W,H3%)%4U5,5" F<G8L(%=005)!32!W<&%R86TL($Q005)!






M3%0 )G)V+"!74$%204T =W!A<F%M+"!,4$%204T ;'!A<F%M("D >PT*"0DH



`
end

begin 666 window.cpp


M('1O(%=I;F1Y07!P.CH <W1A=&EC(&9U;F-T:6]N<R!W92!H879E('1O(&UO
M=F4 =&AE<V4 9G5N8W1I;VYS(&EN=&\ 82!D969I;FET:6]N(&9I;&4L($,K
M*R!S=6-K<R!A<W,-" T*8F]O;"!7;F0Z.F-R96%T945X*$173U)$(&1W17A3
M='EL92QC;VYS="!S=')I;F<F('=I;F1O=TYA;64L("  ($173U)$(&1W4W1Y
M;&4L("  (&EN="!X+"  ("!I;G0 >2P ("  :6YT(&Y7:61T:"P ("  :6YT
M(&Y(96EG:'0L("  ($A73D0 :%=N9%!A<F5N="P ("  2$U%3E4 :$UE;G4L

M;5]H=VYD(#T

M" D)>"P >2P ;E=I9'1H+"!N2&5I9VAT+ T*"0EH5VYD4&%R96YT+"!H365N
M=2P 5VEN9'E!<' Z.F=L;V)A;$EN<W1A;F-E+"!X=')A*3L-" ER971U<FX 



`
end

begin 666 common.h


M(#QM87

`
end

begin 666 windy.cpp


(%=I;F1Y07!P.CIW:6YD4')O<$%T;VT /2 P.PT*
` end begin 666 windy.h M(F-O;6UO;BYH( T*(VEN8VQU9&4 (FUS9RYH( T*(VEN8VQU9&4 (G=I;F1O M2$E.4U1!3D-%(&=L;V)A;$EN<W1A;F-E.PT*"7-T871I8R!!5$]-('=I;F10 M<F]P071O;3L-"G!R;W1E8W1E9#H-" D-" D-" ES=&%T:6, 3%)%4U5,5"!7 M:6YD;W=0<F]C*"!(5TY$(&AW;F0L(%5)3E0 ;7-G+"!74$%204T =W!A<F%M M;61(=VYD(#T M"0D)"7T-" D)"0DO+R!S96YD:6YG('1H92!W:6YD;W< =&AA="!W:6YD;W=S M('-E;G0 =&AE(&UE<W-A9V4 =&\-" D)"0DO+R!T:&ES('=I;&P ;6]S="!L M:6ME;'D :G5S="!C86QL('5N:&%N9&QE9$US9PT*"0D)"2\O(&)U="!Y;W4 M8V%N(&%D9"!Y;W5R(&]W;B!C;VUM86YD(&AA;F1L97( :68-" D)"0DO+R!Y M3$0 8F4 =&AE(&QA<W0 979E<GD ;7-G('1H92!W:6YD;W< =VEL;"!G970- M" D)"0EI9B H(&US9R ]/2!735].0T1%4U123UD *0T*"0D)"7L-" D)"0D) M365S<V%G94)O>"A.54Q,+" B5VEN9&]W(%)E9VES=')A=&EO;B!&86EL960A M9V4H(')V+"!M<V<L('=P87)A;2P ;'!A<F%M("D *0T*"0D)"7L-" D)"0D) M<F5T=7)N(')V.PT*"0D)"7T-" D)"0ER971U<FX =VYD+3YU;FAA;F1L961- M"65L<V4-" D)>PT*"0D)3%!.34A$4B!P=')4;TYO=&EF>3L-" D)"7!T<E1O M3F]T:69Y(#T *$Q03DU(1%(I;'!A<F%M.PT*"0D):68H('!T<E1O3F]T:69Y M;TYO=&EF>2T^:'=N9$9R;VT *3L-" T*"0D)"6EF(" =VYD("D-" D)"0E[ M" D)5TY$0TQ!4U-%6"!W8SL-" D)2%=.1"!H=VYD.PT*"0E-4T< 37-G.PT* M='EL90D)(#T ,#L-" D)=V,N;'!F;E=N9%!R;V,)(#T *%=.1%!23T,I)E=I M>'1R80D /2 P.PT*"0EW8RYH26YS=&%N8V4)(#T 9VQO8F%L26YS=&%N8V4[ M3TXI.PT*"0EW8RYH0W5R<V]R"0D /2!,;V%D0W5R<V]R*$Y53$PL($E$0U]! M4T]54D-%*$E$4E]-64U%3E4I.PT*"0EW8RYL<'-Z0VQA<W-.86UE(#T 5TE. M37-G0G5F.PT*"0EI9B H(49O<FUA=$UE<W-A9V4H( T*"0D)(" ($9/4DU! M17)R;W(H*2P-" D)"2 ("!-04M%3$%.1TE$*$Q!3D=?3D555%)!3"P 4U5" M3$%.1U]$149!54Q4*2P +R\ 1&5F875L="!L86YG=6%G90T*"0D)(" ("A, M4%135%(I("9L<$US9T)U9BP-" D)"2 (" P+ T*"0D)(" ($Y53$P *2D- M" D)>PT*"0D)+R\ 2&%N9&QE('1H92!E<G)O<BX-" D)"7)E='5R;B B1F]R M="!M97-S86=E0F]X*&-O;G-T('-T<FEN9R8 =&ET;&4L(&-O;G-T('-T<FEN M9R8 8V%P=&EO;B ]("));F9O(BQI;G0 <W1Y;&4 /2!-0E]/2R I('L-" D) M<F5T=7)N($UE<W-A9V5";W H,"QT:71L92YC7W-T<B I+&-A<'1I;VXN8U]S M,"P ," I("D-" D)>PT*"0D)5')A;G-L871E365S<V%G92 )FUS9R I.PT* M:6, 8F]O;"!C:&5C:T9O<DUS9W,H*0T*"7L-" D)8F]O;"!D;T5X:70 /2!F M86QS93L-" D)35-'(&US9SL-" D)=VAI;&4 *"!0965K365S<V%G92 )FUS M(&US9RYM97-S86=E(#T](%=-7U%5250 *0T*"0D)>PT*"0D)"4=L;V)A;$1E M;&5T94%T;VTH('=I;F10<F]P071O;2 I.PT*"0D)"61O17AI=" ]('1R=64[ M871C:$UE<W-A9V4H("9M<V< *3L-" D)?0T*"0ER971U<FX 9&]%>&ET.PT* M"7T-" T*"4Q215-53%0 <V5N9$)R;V%D8V%S=$US9R 54E.5"!M<V<L(%=0 M05)!32!W<&%R86TL($Q005)!32!L<&%R86T *0T*"7L-" D)+R\ <V5N9', M92 2%=.1%]"4D]!1$-!4U0L(&US9RP =W!A<F%M+"!L<&%R86T *3L-" E] M5TY$7T)23T%$0T%35"P ;7-G+"!W<&%R86TL(&QP87)A;2 I.PT*"7T-" T* ` end begin 666 StdAfx.cpp M+R\ <W1D869X+F-P<" Z('-O=7)C92!F:6QE('1H870 :6YC;'5D97, :G5S M="!T:&4 <W1A;F1A<F0 :6YC;'5D97,-"B\O"5=I;F1Y3&EB+G!C:"!W:6QL M;&P 8V]N=&%I;B!T:&4 <')E+6-O;7!I;&5D('1Y<&4 :6YF;W)M871I;VX- M86YY(&%D9&ET:6]N86P :&5A9&5R<R!Y;W4 ;F5E9"!I;B!35$1!1E N2 T* 9+R\ 86YD(&YO="!I;B!T:&ES(&9I;&4-" `` ` end begin 666 StdAfx.h M+R\ <W1D869X+F .B!I;F-L=61E(&9I;&4 9F]R('-T86YD87)D('-Y<W1E M;2!I;F-L=61E(&9I;&5S+ T*+R\ (&]R('!R;VIE8W0 <W!E8VEF:6, :6YC M;'5D92!F:6QE<R!T:&%T(&%R92!U<V5D(&9R97%U96YT;'DL(&)U= T*+R\ M:6YE9"A!1EA?4U1$04987TA?7T$Y1$(X,T1"7T$Y1D1?,3%$,%]"1D0Q7S0T M9&EF("\O(%]-4T-?5D52(#X M04Y$7TU%04X)"2\O($5X8VQU9&4 <F%R96QY+75S960 <W1U9F8 9G)O;2!7 M:6YD;W=S(&AE861E<G,-" T*(VEN8VQU9&4 /'=I;F1O=W,N:#X- M+R!43T1/.B!R969E<F5N8V4 861D:71I;VYA;"!H96%D97)S('EO=7( <')O M?7T-"B\O($UI8W)O<V]F="!6:7-U86P 0RLK('=I;&P :6YS97)T(&%D9&ET M:6]N86P 9&5C;&%R871I;VYS(&EM;65D:6%T96QY(&)E9F]R92!T:&4 <')E M=FEO=7, ;&EN92X-" T*(V5N9&EF("\O("%D969I;F5D*$%&6%]35$1!1EA? ` end begin 666 WindyLib.cpp M+R\ 5VEN9'E,:6(N8W!P(#H 1&5F:6YE<R!T:&4 96YT<GD <&]I;G0 9F]R M($9O=V%R9"!D96-L87)A=&EO;G, ;V8 9G5N8W1I;VYS(&EN8VQU9&5D(&EN M>4%P<" L('!U8FQI8R!-<V=3;&]T('L-"G!U8FQI8SH-" T*"79O:60 <V%Y M" EV:7)T=6%L('9O:60 3VY"96=I;B I('L-" D)0V]M;6%N9$US9U-L;W0 M(" A=RT^8W)E871E17 H"5=37T587T-,245.5$5$1T4L(E1H92!T:71L92!O M9B!M>2!W:6YD;W<B+%=37T]615),05!0141724Y$3U<L0U=?55-%1$5&055, M5"P 0U=?55-%1$5&055,5"P ,C0P+" Q,C L3E5,3"P 3E5,3"P 5VEN9'E! M<V%G94)O>"A7:6YD>4%P<#HZ9V5T3&%S=$5R<F]R*"D *3L-" D)+R]W+3YA M9&1(86YD;&5R*%=-7TQ"55143TY$3U=.+" I.PT*"0EW+3YS:&]W5VEN9&]W M(%=I;DUA:6XH2$E.4U1!3D-%(&A);G-T86YC92P-"B (" (" (" (" M(" (" (" 3%!35%( (" (&QP0VUD3&EN92P-"B (" (" (" (" M(" (" (&EN=" (" ("!N0VUD4VAO=RD-"GL-"B )+R\ 5$]$3SH 4&QA M-#H )U]?=&AI<V-A;&P 0V]M;6%N9$US9U-L;W0Z.D-O;6UA;F1-<V=3;&]T M*'9O:60 *%]?=&AI<V-A;&P 37-G4VQO=#HZ*BDH=F]I9"DI)R Z(&-A;FYO M="!C;VYV97)T('!A<F%M971E<B Q(&9R;VT )W9O:60 *%]?=&AI<V-A;&P M37E!<' Z.BHI*'9O:60I)R!T;R G=F]I9" H7U]T:&ES8V%L;"!-<V=3;&]T M.CHJ*2AV;VED*0T*)PT*(" (" ("!4>7!E<R!P;VEN=&5D('1O(&%R92!U M;G)E;&%T960[(&-O;G9E<G-I;VX <F5Q=6ER97, <F5I;G1E<G!R971?8V%S M="P 0RUS='EL92!C87-T(&]R(&9U;F-T:6]N+7-T>6QE(&-A<W0-"D,Z7%!R ` end
Nov 06 2003
parent "Charles Sanders" <sanders-consulting comcast.net> writes:
Nm found it thanks.

C

"Charles Sanders" <sanders-consulting comcast.net> wrote in message
news:boei7u$1sdp$1 digitaldaemon.com...
 Hey all, im trying to develop a C++ and D window kit for Windows, having a
 little trouble implementing "MessageSlots" in the C++ version and Im not
 sure how else to proceed, ive attached the source, the error message is
 pasted at the bottom of WindyLib.cpp ... any advice is super helpful Im a
 little bit out of my league.

 Thanks all,
 C
Nov 06 2003