////////////////////////////////////////////////////////////////////
/*

    KAB-studio.h


    (C)KAB-studio 1999 - 2004 ALL RIGHTS RESERVED.
        http://www.kab-studio.biz/
        info@mail.kab-studio.biz

    MF 2004/01/26(Mon) No.241
    zMF 2660 ( Mag2 + Pubzine )
    sF ܂܂ ( URL: http://www.mag2.com/  ID: 0000012198 )
    sF Pubzine ( URL: http://www.pubzine.com/  ID: 590 )
*/
////////////////////////////////////////////////////////////////////

/*        Pubzine ǎ҂̕ - ܂܂ڍŝ˂ -           */

@{[}KWA KAB-studio.h ́u܂܂vƁu Pubzine v
Qʂ̔zMT[rX𗘗pĒĂ܂B
@̂ӂ̃T[rXA Pubzine QOOSNQXŏI
܂B̂߁A̓ȍ~A Pubzine ōwǓo^Ă
KAB-studio.h zM܂B
@ KAB-studio.h wǓo^Ƃ́A萔ł
[܂܂ KAB-studio.h o^ ]ɂčwǓo^ĂB

[ Pubzine IɂĂ̂点 ]
http://www.pubzine.com/
[ ܂܂ KAB-studio.h o^ ]
http://www.mag2.com/m/0000012198.htm

pFPubzine ł̍ŏIzM͂̍łH
`FQQA܂莟łB

pFPubzine ̍wǓo^͕KvH
`F炭KvȂƎv܂B
@@܂܂ɍwǓo^ĂAԂē͎͂̂łB

pFԃX^ňڍsĂȂłH
`Fł͊F̃[AhX͂킩Ȃ̂ŕs\łB
@@킩ĂłB
@@Pubuzine uɈڊǂvƂƂ͂ȂłB

////////////////////////////////////////////////////////////////////
/*                QOOSNPQUij̍XV                */
http://www.kab-studio.biz/index.html

EقƂ́[Pbǉ
@Ol̃zbgn[uɂV̂XǉBL[̑ˁAƂ
ƂŁB
[ Ol̃zbgn[u ]
http://www.kab-studio.biz/Comic/HotHerb/index.html


////////////////////////////////////////////////////////////////////
/*                        储ʂȓL                        */
http://www.kab-studio.biz/nikki2/index.html

2004/01/18 (Sun)
@ԃwb_[āAقƂ́[`āAN]āAقƂ́[̎c`
āBȊBj^[Ă邩疰ȂH@ĖZB

2004/01/19 (Mon)
@ăR~X֐UBt@C}[WɂЁ[ccBߌ}[WB
vZ@őccB Hi! ȃ[Bpb`ȂccB

2004/01/20 (Tue)
@̗͓IɌEBccBƂ̓}[WƃoOׂBN̓lbg
Q[BPނɔȃj[B

2004/01/21 (Wed)
@oOԂƂC|[gƂT|[gƂB͂UオƂ[
Ղ̑BȂ񂩋CccB킽ɔ؂H

2004/01/22 (Thu)
@oOׂBЂ[ׂĂȂȂB݂ȃ_Ei[H@
͂ɂǂĂPiႤB}݂ĂȂ񂾂񂾂ĖʔBg
ƕ֗y[WB

2004/01/23 (Fri)
@ʂƂ̌eXgJnBڍsf[^occBIuWFNguE
U SQL*Plus ̕ĂByׂ邩ccBB
QΑvH@Ă̗\B

2004/01/24 (Sat)
@[ꂽBߑO͉l܂Bߌ͋xoBƎsccB
񂩂ւƂւƁBN]Ƃ肠x~B Fate ɒ́ijB\ǎS
܂ŃpXBăR~\݂ȂƁccB


////////////////////////////////////////////////////////////////////
/*                         A                             */
http://www.kab-studio.biz/Novel/Fuga/index.html

@́@ll@|PW|

uǂƁccHv
utl̎ccv
@ԗt͂ȂB
uA΂񂪎񂾂āÁB򂩂oĂȂA
̐ɓāccElĂƂ́ccv
uȁccv
u̒ʂv
@SUɁAjĂB̃^Ngbv𒅂אg
jA΂ĂB
uȂɂ񂾁v
u񂽂ƓA̐󂯂񂾂v
uIHv
@Rl͐g\BGƂ͔ĂBA󂯂lԂ́A
ɂ͂ȂB
u[ASȂBƁccv
@RlЂƂ肸l݂B
ȕv
@ԗtwB
u܂AĂ΂B̂ӂ͂BƂƂƏv
uӂȁIIv
@ԗt̑OɗA\B
uӂv
@j͕@ŏ΂AԁBIɁAւƌB
uԗtIIv
@ɉEɐԗtɒԁB̊Ԃɒj~B
wx
@ギB
w̐FƋɁx
@j̎
wx
@n܂
wƂIHx
@؂悪ԗt
uIIv
@G܂
wƂA΂IIx
@ԗt̑ǰɓB
@͂ĂB
@j́AЂъꂽzɁAԗtāAłĂB
uȂ񂾁A󂯂ĂȂ̂ccv
                                                              ()


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
wccȂɂȂȂÃR[i[ȂȂHx
uccv
http://www.kab-studio.biz/index.html
_______________________________________________________________[KCM]

////////////////////////////////////////////////////////////////////
/*                       #pragma twice                            */
http://www.kab-studio.biz/Programing/PragmaTwice/index.html

@Version 13.05
G[̕Ԃ

uO܂ł͂Ǝdl܂ƂAvOł̘bƂ
ꂽƂ܂v
wR[fBÔ̂ɂ͂܊֌WȂˁx
uAASY֐͉xgƂARgNg
l莝Xɗˁv
weLg[ɍ֐ƎgĂƐFX{oAĂƂˁx
uŁA񂩂͎ɂČĂ܂B܂́AO񂩂̑
˂ăG[ɂāv
wH@ē́Hx
uꍇɂĂ͂ˁBƂ΁AÔPO{֐̏ꍇɂ́q΂ 
1 ` 9̐ɂ͂ȂȂr 1 G[̎̐ɂ邱Ƃł
ǁAHv
w 0.1 Ƃ邩疳ˁx
ułBꍇɂǂG[ԂĂbBG[Ԃ
@́A܂ɕƂS܂v

E߂lƂăG[R[hԂB
EG[R[hԂnĂ炤B
EG[p֐gB
EO𓊂B

u܂A߂l̂͂qG[̎ 1 ԂrĂ
@v
wԕʂۂˁx
uAG[R[h͕ʂɐlԂ񂶂ȂāAʂɒ萔lƂ
Ē`ȁv

const int TENTIMES_WITHERROR2_E_OVERFLOW = 1;

int TenTimes_WithError2( int p_i )
{
    if( p_i > 214748364 )
    {
        // G[I
        return TENTIMES_WITHERROR2_E_OVERFLOW;
    }
    
    return p_i * 10;
}

wΑOɌĂˁx
u Version 4.09 ( No.059 ) ŐˁB 1 Ɓqǂ
 1 Ȃ̂r킩ȂˁB̗Ⴞ 214748364  10 萔l
ɂv
w܂ł񂾁ccx
uG[R[h߂lŕԂ@́AȒPǎ͖_ς
܂v

E߂ľ^ void ƕԂȂB
EG[R[h߂ĂKvB
E߂l͈̔͂ɂĕԂG[R[hB

w void ̂āA BOOL Ƃɂ΂񂶂Ȃ́Hx
u͂B BOOL ݂ɁA߂lqG[ǂ̏Ԃ
߂Ɏgr̂zȁv
włPO{֐ɂ͎͂gȂAƁx
uȂƁAG[R[h߂Ė߂l̒ɍ邱ƂɂȂ܂v
w܂Hx
uʂɕԂ߂lAG[R[hAlłB
q̐̓G[R[hrĂƂƌ߂ĂȂƂ
킯v
wRgNg藧ȂႢȂ킯ˁx
uƁB̏ꍇɂ͎dlA܂RghLg
ƎgȂȂ܂v
w͍ˁccx
u܂G[܂͂ǂdlȂƂ킩Ȃ񂾂ǁA߂l
ĕԂĂ_ő킩ɂȁv
w߂l͈̔́AāHx
u悤ɁAɎ󂯎Ɓv
w 1 ̓G[R[hɎgȂccx
u߂lɃG[R[hԂ߂ɂ́A펞Ɂq΂ɂ蓾Ȃrl
ȂƂȂA̒ľȏ̓G[̎ނ𑝂₹ȂĂ
_܂v
wmɁA 1 ` 9 gȂĂƂɂȂƁAG[R[h̎ނ
XȂĂƂɂȂ񂾂ˁccx
uPO{֐́A 11 Ƃ -1 ƂԂȂv
whx
uł܂ƁB_̂AG[R[h
Ԃ߂̈󂯎Ă@v

const int TENTIMES_WITHERRORREF_E_OVERFLOW = 1;

int TenTimes_WithErrorRef( int p_i, int &p_riRetError )
{
    p_riRetError = 0;
    if( p_i > 214748364 )
    {
        // G[I
        p_riRetError = TENTIMES_WITHERRORREF_E_OVERFLOW;
        return 0;
    }
    
    return p_i * 10;
}

wAx
uɁA int ̎QƂnĂ炤悤ɂāAG[ɂ͂̎Q
G[R[hԂ܂v

void Use_TenTimes_WithErrorRef()
{
    int iRef = 0;
    TenTimes_WithErrorRef( 214748365, iRef );
    if( iRef == TENTIMES_WITHERRORREF_E_OVERFLOW )
    {
        TRACE( "G[I\n" );
    }
}

wϐЂƂĂQɓnāA`FbNcc߂ǂ
ˁx
uAQƂŕԂ@̍ő̃fbg̖͂ʓ|Bg߂ɕK
G[`FbNp̕ϐnȂႢȂĂ̂͌邩ȁv
wĂ[A֐ČƂȂˁBόҁHx
uԂBƂ킯ł܂gĂ܂BΏƓIɔrI悭g
Ă̂qG[p֐grĂ@v
wG[p̊֐Hx
u API ɂ SetLastError()  GetLastError() Ă֐pӂ
Ă܂v
wƃ^C̘bĂ̂ API ccx
u܂^Cɂ̂邯ǁA̕LĂƂŁv

const DWORD TENTIMES_WITHERRORSETTER_E_OVERFLOW = 1;

int TenTimes_WithErrorSetter( int p_i )
{
    if( p_i > 214748364 )
    {
        // G[I
        SetLastError( TENTIMES_WITHERRORSETTER_E_OVERFLOW );
        return 0;
    }
    
    return p_i * 10;
}

u SetLastError() ́AO[oȗ̈ɃG[R[hZbg܂B
̃G[R[h̎擾 GetLastError() Ŏ擾ł܂v

void Use_TenTimes_WithErrorSetter()
{
    TenTimes_WithErrorSetter( 214748365 );
    if( GetLastError() == TENTIMES_WITHERRORSETTER_E_OVERFLOW )
    {
        TRACE( "G[I\n" );
    }
}

w SetLastError() ŃZbg GetLastError() Ŏ擾Aˁx
u API ͂̕@̗pĂāAƂ Version 11.10 ( No.210 ) 
ŏЉ GlobalAlloc() Ƃv

void Use_GlobalAlloc_Error()
{
    GlobalAlloc( GMEM_MOVEABLE, -1 );
    DWORD dError = GetLastError();
    TRACE( "0x%X\n", dError );
    // 0x8
}

u GlobalAlloc() ̑Q͊mۂTCYȂ̂Łv
w}CiX̓_ˁccAG[R[h 8 āx
uA VisualC++ ̃c[yG[zɊ|Ɓv
wq̃R}hŝɏ\ȋL悪܂B rāA
Ƃ킩ɂx
umɁcc܂ -1 TCŸ̗mۂ悤ƂĎsAĂ
ˁBӂɁA API ̃G[̓G[R[hƂĒ`Ă
܂Bv
wHx
uăc[Ɋ|ȂƂ킩ȂAǂ API ǂ̃G[
R[hԂĂ̂hLgŖmɂȂĂ܂v
wIx
uł API gɂ͕K{肷񂾂ǂˁv
wccłA܂ŏoĂȂˁccx
uG[͏ȂĂˁccƂЂƂ肪āA
悤 API p̃G[R[h͐Ɍ߂ĂāA{
1  SetLastError() ႢȂłv
wx
u SetLastError() ̃t@XƂ킩邯ǁAĂ̂ 29 
rbgڂ𗧂ĂBׂ[邩ʓ|ȁv
wƂ킯ŁA{́qOroĂ킯ˁIx
uoĂ܂v
whx
uO͏㋉ȂɁA C++ ł͂܂gĂȂ̂ŁA
ł͐܂v
w`IHx
uOOɂȂႢȂ񂠂邩cc
킯ŁAǂ͖߂lŕԂ̂ԊȒPōL܂Ă邩炻ꂪ
ȁAƁv
w댯ǁAˁIx

/*
    Preview Next Story!
*/
wȂ񂩌Ǌۂߍ܂Ă邵ccx
u܂ÃG[͓gȂǁv
wȂ́Hx
u񂩂̓G[Ȃ\[gɂĂłv
wAȂ񂩃\[gēȃC[Wccx
uƂ킯Ŏv
 Version 13.06 ASY̒ԁE\[g 
wɂÂIx
uG[܂߂āAʂȂƂȂȒPƎvv
wȂ́Hx
uccȒPł͂Ȃv
wx


////////////////////////////////////////////////////////////////////
/*                QOOSNQQij̍XV                  */
http://www.kab-studio.biz/index.html

EقƂ́[Pbǉ\
@Ol̃zbgn[uɂV̂POǉ\B\肬ccB


////////////////////////////////////////////////////////////////////
/*                          ӁII                            */

Ẽ[ԐMȂłB
EӌE]Ez[`[ʂȓL]肨肭B
http://www.kab-studio.biz/nikki2/
EwǓo^Ƃɂ͂̃y[WōsȂĂB
http://www.mag2.com/m/0000012198.htm
http://www.pubzine.com/detail.asp?id=000590
E͎ōsȂĂB
EobNio[͂̃y[Wɂ܂B
http://backno.mag2.com/reader/Back?id=0000012198
http://www.kab-studio.biz/Freeware/index.html#MailMagazine


////////////////////////////////////////////////////////////////////
/*
    KAB-studio.h
      Weekly Mail Magazine.
      Written by Kaburaya Seiden.
      http://www.kab-studio.biz/Info/MailMagazine/

    (C)KAB-studio 1999 - 2004 ALL RIGHTS RESERVED.
        http://www.kab-studio.biz/
        info@mail.kab-studio.biz
*/
////////////////////////////////////////////////////////////////////

