ืื ื’ืœื™ืชืฆืจืคืชื™ืชืกืคืจื“ื™

Ad


ืกืžืœ OnWorks

winebuild - ืžืงื•ื•ืŸ ื‘ืขื ืŸ

ื”ืคืขืœ Winbuild ื‘ืกืคืง ืื™ืจื•ื— ื—ื™ื ืžื™ ืฉืœ OnWorks ืขืœ ืื•ื‘ื•ื ื˜ื• Online, Fedora Online, ืืžื•ืœื˜ื•ืจ ืžืงื•ื•ืŸ ืฉืœ Windows ืื• ืืžื•ืœื˜ื•ืจ ืžืงื•ื•ืŸ ืฉืœ MAC OS

ื–ื•ื”ื™ ื‘ื ื™ื™ืช ื”ืคืงื•ื“ื” Winebuild ืฉื ื™ืชืŸ ืœื”ืคืขื™ืœ ื‘ืกืคืง ื”ืื™ืจื•ื— ื”ื—ื™ื ืžื™ ืฉืœ OnWorks ื‘ืืžืฆืขื•ืช ืื—ืช ืžืชื—ื ื•ืช ื”ืขื‘ื•ื“ื” ื”ืžืงื•ื•ื ื•ืช ื”ืžืจื•ื‘ื•ืช ืฉืœื ื•, ื›ื’ื•ืŸ Ubuntu Online, Fedora Online, ืืžื•ืœื˜ื•ืจ ืžืงื•ื•ืŸ ืฉืœ Windows ืื• ืืžื•ืœื˜ื•ืจ ืžืงื•ื•ืŸ ืฉืœ MAC OS

ืชึธื›ึฐื ึดื™ืช:

ืฉืึตื


winebuild - Wine dll ื‘ื•ื ื”

ืชึทืงืฆึดื™ืจ


ื‘ื ื™ื™ืช ื™ื™ืŸ [ืืคืฉืจื•ื™ื•ืช] [ืงื•ื‘ืฅ ืงืœื˜...]

ืชื™ืื•ืจ


ื‘ื ื™ื™ืช ื™ื™ืŸ ืžื™ื™ืฆืจ ืืช ืงื‘ืฆื™ ื”-assembly ื”ื“ืจื•ืฉื™ื ืœื‘ื ื™ื™ืช ืงื•ื‘ืฅ dll ืฉืœ Wine, ื›ืœื•ืžืจ
ื‘ืขืฆื dll ืฉืœ Win32 ื”ืžื•ื‘ืœืข ื‘ืชื•ืš ืกืคืจื™ื™ืช ื™ื•ื ื™ืงืก.

ื‘ื ื™ื™ืช ื™ื™ืŸ ื™ืฉ ืžืฆื‘ื™ื ืฉื•ื ื™ื, ืชืœื•ื™ ืื™ื–ื” ืกื•ื’ ืงื•ื‘ืฅ ื”ื•ื ืžืชื‘ืงืฉ ืœื™ืฆื•ืจ. ื”
ืžืฆื‘ ืžื•ื’ื“ืจ ืขืœ ื™ื“ื™ ืื—ืช ืžืืคืฉืจื•ื™ื•ืช ื”ืžืฆื‘ ื”ืžืคื•ืจื˜ื•ืช ืœื”ืœืŸ. ื‘ื ื•ืกืฃ ืœืžืฆื‘
ืืคืฉืจื•ืช, ื ื™ืชืŸ ืœืฆื™ื™ืŸ ืืคืฉืจื•ื™ื•ืช ืฉื•ื ื•ืช ืื—ืจื•ืช ืฉืœ ืฉื•ืจืช ื”ืคืงื•ื“ื”, ื›ืžืชื•ืืจ ื‘- ืืคืฉืจื•ื™ื•ืช
ืกึธืขึดื™ืฃ.

MODE ืืคืฉืจื•ื™ื•ืช


ืขืœื™ืš ืœืฆื™ื™ืŸ ื‘ื“ื™ื•ืง ืื—ืช ืžื”ืืคืฉืจื•ื™ื•ืช ื”ื‘ืื•ืช, ื‘ื”ืชืื ืœืžื” ืฉืืชื” ืจื•ืฆื”
ื‘ื ื™ื™ืช ื™ื™ืŸ ื›ื“ื™ ืœื™ืฆื•ืจ.

--dll ื‘ื ื” ืงื•ื‘ืฅ assembly ืžืงื•ื‘ืฅ โ€Ž.spec (ืจืื” SPEC ืงื•ื‘ืฅ ืชื—ื‘ื™ืจ ืœืคืจื˜ื™ื), ืื•
ืžืงื•ื‘ืฅ .def ืจื’ื™ืœ ืฉืœ Windows. ืงื•ื‘ืฅ ื”-.spec/.def ืžืฆื•ื™ืŸ ื‘ืืžืฆืขื•ืช ื”- -E
ืื•ึนืคึผึฐืฆึดื™ึธื”. ื™ืฉ ืœื”ืจื›ื™ื‘ ืืช ื”ืงื•ื‘ืฅ ื”ืžืชืงื‘ืœ ื•ืœืงืฉืจ ืื•ืชื• ืœืงื‘ืฆื™ ื”ืื•ื‘ื™ื™ืงื˜ ื”ืื—ืจื™ื
ืœื‘ื ื•ืช ืงื•ื‘ืฅ Wine dll ืขื•ื‘ื“. ื‘ืžืฆื‘ ื–ื”, ื” ืงืœื˜ ืงื‘ืฆื™ื ืฆืจื™ื›ื” ืœื”ื™ื•ืช ื”ืจืฉื™ืžื” ืฉืœ
ื›ืœ ืงื‘ืฆื™ ื”ืื•ื‘ื™ื™ืงื˜ ืฉื™ืงื•ืฉืจื• ืœ-dll ื”ืกื•ืคื™, ื›ื“ื™ ืœืืคืฉืจ ื‘ื ื™ื™ืช ื™ื™ืŸ ื›ื“ื™ ืœืงื‘ืœ
ื”ืจืฉื™ืžื” ืฉืœ ื›ืœ ื”ืกืžืœื™ื ื”ืœื ืžื•ื’ื“ืจื™ื ืฉื™ืฉ ืœื™ื™ื‘ื ืžืงื‘ืฆื™ dll ืื—ืจื™ื.

--exe ื‘ื ื” ืงื•ื‘ืฅ assembly ืขื‘ื•ืจ ืงื•ื‘ืฅ ื”ืคืขืœื”. ื–ื” ื‘ืขืฆื ื–ื”ื” ืœ- --dll
ืžืฆื‘ ืคืจื˜ ืœื›ืš ืฉื”ื•ื ืื™ื ื• ื“ื•ืจืฉ ืงื•ื‘ืฅ .spec/.def ื›ืงืœื˜, ืฉื›ืŸ ืงื•ื‘ืฅ ื”ืคืขืœื”
ืœื ืฆืจื™ืš ืœื™ื™ืฆื ืคื•ื ืงืฆื™ื•ืช. ืขื ื–ืืช, ื—ืœืง ืžืงื•ื‘ืฆื™ ื”ื”ืคืขืœื” ืขื•ืฉื™ื ืคื•ื ืงืฆื™ื•ืช ื™ื™ืฆื•ื, ื•ืขื‘ื•ืจ
ื ื™ืชืŸ ืœืฆื™ื™ืŸ ืงื•ื‘ืฅ .spec/.def ื‘ืืžืฆืขื•ืช ื”- -E ืื•ึนืคึผึฐืฆึดื™ึธื”. ืฉื ื”ืงื•ื‘ืฅ ื”ื”ืคืขืœื”
ืžืฉื ื”ืงื•ื‘ืฅ .spec/.def ืื ืงื™ื™ื, ืื• ื‘ืžืคื•ืจืฉ ื“ืจืš ื”- -F ืื•ึนืคึผึฐืฆึดื™ึธื”. ื”
ื™ืฉ ืœื”ืจื›ื™ื‘ ื•ืœืงืฉืจ ืืช ื”ืงื•ื‘ืฅ ื”ืžืชืงื‘ืœ ืœืงื‘ืฆื™ ื”ืื•ื‘ื™ื™ืงื˜ ื”ืื—ืจื™ื ื›ื“ื™ ืœื‘ื ื•ืช ื
ืงื•ื‘ืฅ ื”ืคืขืœื” Wine ืขื•ื‘ื“, ื•ื›ืœ ืฉืืจ ืงื‘ืฆื™ ื”ืื•ื‘ื™ื™ืงื˜ ื—ื™ื™ื‘ื™ื ืœื”ื™ื•ืช ืจืฉื•ืžื™ื ื‘ืชื•ืจ ืงืœื˜
ืงื‘ืฆื™ื.

--ื‘ื”ื’ื“ืจื” ื‘ื ื” ืงื•ื‘ืฅ .def ืžืงื•ื‘ืฅ ืžืคืจื˜. ืงื•ื‘ืฅ ื”-.spec ืžืฆื•ื™ืŸ ื‘ืืžืฆืขื•ืช ื”- -E ืื•ึนืคึผึฐืฆึดื™ึธื”.
ื–ื” ืžืฉืžืฉ ื‘ืขืช ื‘ื ื™ื™ืช ืงื‘ืฆื™ dll ืขื ืžื”ื“ืจ PE (Win32).

--implib
ื‘ื ื” ืกืคืจื™ื™ืช ื™ื™ื‘ื•ื โ€‹โ€‹PE ืžืงื•ื‘ืฅ ืžืคืจื˜. ืงื•ื‘ืฅ ื”-.spec ืžืฆื•ื™ืŸ ื‘ืืžืฆืขื•ืช ื”- -E
ืื•ึนืคึผึฐืฆึดื™ึธื”.

--ืึถืžึฐืฆึธืขึดื™
ืฆื•ืจ ืงื•ื‘ืฅ .o ื”ืžื›ื™ืœ ืืช ื›ืœ ืžืฉืื‘ื™ ื”ืงืœื˜. ื–ื” ืฉื™ืžื•ืฉื™ ื‘ืขืช ื‘ื ื™ื™ื”
ืขื ืžื”ื“ืจ PE, ืžื›ื™ื•ื•ืŸ ืฉื”-Binutils PE ืœื ื™ื›ื•ืœ ืœื”ืชืžื•ื“ื“ ืขื ืงื‘ืฆื™ ืžืฉืื‘ื™ื ืžืจื•ื‘ื™ื ื›ืžื•
ืงึถืœึถื˜. ืขื‘ื•ืจ ืžื‘ื ื” Unix ืกื˜ื ื“ืจื˜ื™, ืงื‘ืฆื™ ื”ืžืฉืื‘ื™ื ื ื›ืœืœื™ื ื‘ืื•ืคืŸ ืื•ื˜ื•ืžื˜ื™
ื‘ืขืช ื‘ื ื™ื™ืช ืงื•ื‘ืฅ ื”ืžืคืจื˜, ื›ืš ืฉืื™ืŸ ืฆื•ืจืš ื‘ืงื•ื‘ืฅ .o ื‘ื™ื ื™ื™ื.

ืืคืฉืจื•ื™ื•ืช


--as-cmd=ื›ืคืงื•ื“ื”
ืฆื™ื™ืŸ ืืช ื”ืคืงื•ื“ื” ืœืฉื™ืžื•ืฉ ื›ื“ื™ ืœื”ื“ืจ ืงื‘ืฆื™ assembly; ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ื”ื™ื as.

-ื‘, --ืžื˜ืจื”=ื™ืฆืจืŸ ืžืขื‘ื“[-ื’ืจืขื™ืŸ]-os
ืฆื™ื™ืŸ ืืช ืžืขื‘ื“ ื”ื™ืขื“ ื•ื”ืคืœื˜ืคื•ืจืžื” ืฉืขืœื™ื”ืŸ ื™ื™ื‘ื ื” ื”ืงื•ื“ ืฉื ื•ืฆืจ. ื”
ืžืคืจื˜ ื”ื™ืขื“ ื”ื•ื ื‘ืคื•ืจืžื˜ autoconf ื”ืกื˜ื ื“ืจื˜ื™ ื›ืคื™ ืฉื”ื•ื—ื–ืจ ืขืœ ื™ื“ื™ config.sub.

--cc-cmd=ื”ืคืงื•ื“ื” cc
ืฆื™ื™ืŸ ืืช ืžื”ื“ืจ C ืœืฉื™ืžื•ืฉ ื›ื“ื™ ืœื”ื“ืจ ืงื‘ืฆื™ assembly; ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ื”ื™ื ื‘ืžืงื•ื ื–ืืช
ื”ืฉืชืžืฉ ื‘-assembler ืฉืฆื•ื™ืŸ ืขื --as-cmd.

-ื“, --delay-lib=ืฉื
ื”ื’ื“ืจ ืืช ืžืฆื‘ ื”ื™ื™ื‘ื•ื โ€‹โ€‹ื”ืžื•ืฉื”ื” ืขื‘ื•ืจ ื”ืกืคืจื™ื™ื” ืฉืฆื•ื™ื ื”, ืืฉืจ ื—ื™ื™ื‘ืช ืœื”ื™ื•ืช ืื—ืช ืžื”-
ืกืคืจื™ื•ืช ื”ืžื™ื•ื‘ืื•ืช ืขื ื” -l ืื•ึนืคึผึฐืฆึดื™ึธื”. ืžืฆื‘ ืžื•ืฉื”ื” ืื•ืžืจ ืฉื”ืกืคืจื™ื™ื” ืœื ืชื”ื™ื”
ื ื˜ืขืŸ ืขื“ ืฉืคื•ื ืงืฆื™ื” ื”ืžื™ื•ื‘ืืช ืžืžื ื” ื ืงืจืืช ื‘ืคื•ืขืœ.

-D ืกืžืœ
ื”ืชืขืœืžื• ื‘ื’ืœืœ ืชืื™ืžื•ืช ืขื ืžื”ื“ืจ C.

, --ื›ื ื™ืกื”=ืคื•ื ืงืฆื™ื”
ืฆื™ื™ืŸ ืืช ืคื•ื ืงืฆื™ื™ืช ื ืงื•ื“ืช ื”ื›ื ื™ืกื” ืฉืœ ื”ืžื•ื“ื•ืœ; ืื ืœื ืฆื•ื™ืŸ, ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ื”ื™ื DllMain
ืขื‘ื•ืจ ืงื‘ืฆื™ dll, ื• ืจืืฉื™ ืขื‘ื•ืจ ืงื•ื‘ืฆื™ ื”ืคืขืœื” (ืื ื”ืชืงืŸ C ืจืืฉื™ ืœื ืžื•ื’ื“ืจ, Winmain
ืžืฉืžืฉ ื‘ืžืงื•ื ื–ืืช). ื–ื” ืชืงืฃ ืจืง ืขื‘ื•ืจ ืžื•ื“ื•ืœื™ Win32.

-ื”, --ื™ื™ืฆื•ื=ืฉื ื”ืงื•ื‘ืฅ
ืฆื™ื™ืŸ ืงื•ื‘ืฅ โ€Ž.spec (ืจืื” SPEC ืงื•ื‘ืฅ ืชื—ื‘ื™ืจ ืœืคืจื˜ื™ื), ืื• ื’ืจืกื” ืจื’ื™ืœื” ืฉืœ Windows.def
ืงื•ื‘ืฅ ืฉืžื’ื“ื™ืจ ืืช ื”ื™ื™ืฆื•ื ืฉืœ ื”-DLL ืื• ืงื•ื‘ืฅ ื”ื”ืคืขืœื” ืฉื ื‘ื ื”.

--ืกื™ืžื ื™ื ื—ื™ืฆื•ื ื™ื™ื
ืืคืฉืจ ืงื™ืฉื•ืจ ืœืกืžืœื™ื ื—ื™ืฆื•ื ื™ื™ื ื™ืฉื™ืจื•ืช ืžืงื•ื‘ืฅ ื”ืžืคืจื˜. ื‘ื“ืจืš ื›ืœืœ ืกืžืœื™ื
ืžื™ื•ืฆื ืขืœ ื™ื“ื™ dll ืฆืจื™ืš ืœื”ื™ื•ืช ืžื•ื’ื“ืจ ื‘-dll ืขืฆืžื•; ืืคืฉืจื•ืช ื–ื• ืขื•ืฉื” ืืช ื–ื”
ืืคืฉืจ ืœื”ืฉืชืžืฉ ื‘ืกืžืœื™ื ื”ืžื•ื’ื“ืจื™ื ื‘ืกืคืจื™ื™ืช ื™ื•ื ื™ืงืก ืื—ืจืช (ืขื‘ื•ืจ ืกืžืœื™ื ื”ืžื•ื’ื“ืจื™ื ื‘
dll ืื—ืจ, ื ืงึธื“ึดื™ืžึธื” ื™ืฉ ืœื”ืฉืชืžืฉ ื‘ืžืคืจื˜ ื‘ืžืงื•ื).

-f ืื•ึนืคึผึฐืฆึดื™ึธื”
ืฆื™ื™ืŸ ืืคืฉืจื•ืช ืœื™ืฆื™ืจืช ืงื•ื“. ื›ึผึทื™ื•ึนื -fPIC ื• -ืคื-ืกื™ื ื›ืจื•ื ื™-ืคืจื™ืง-ืฉื•ืœื—ื ื•ืช
ื ืชืžื›ื™ื. ืžืชืขืœืžื™ื ืžืืคืฉืจื•ื™ื•ืช ืื—ืจื•ืช ื‘ื’ืœืœ ืชืื™ืžื•ืช ืขื ืžื”ื“ืจ C.

--ืžื•ื“ื•ืœ ืžื–ื•ื™ืฃ
ืฆื•ืจ ืžื•ื“ื•ืœ PE ืžื–ื•ื™ืฃ ืขื‘ื•ืจ dll ืื• exe, ื‘ืžืงื•ื ื”ื”ืจื›ื‘ื” ืื• ื”ืื•ื‘ื™ื™ืงื˜ ื”ืจื’ื™ืœื™ื
ืงื•ึนื‘ึถืฅ. ืžื•ื“ื•ืœ PE ืžื›ื™ืœ ืืช ื”ืžืฉืื‘ื™ื ืขื‘ื•ืจ ื”ืžื•ื“ื•ืœ, ืืš ืื™ืŸ ืงื•ื“ ื”ืคืขืœื”.

-ื•, --ืฉื ืงื•ื‘ืฅ=ืฉื ื”ืงื•ื‘ืฅ
ื”ื’ื“ืจ ืืช ืฉื ื”ืงื•ื‘ืฅ ืฉืœ ื”ืžื•ื“ื•ืœ. ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ื”ื™ื ืœื”ืฉืชืžืฉ ื‘ืฉื ื”ื‘ืกื™ืก ืฉืœ ื”ืžืคืจื˜
ืงื•ื‘ืฅ (ืœืœื ื›ืœ ืกื™ื•ืžืช).

-ื—, - ืขื–ืจื”
ื”ืฆื’ ื”ื•ื“ืขืช ืฉื™ืžื•ืฉ ื•ืฆื.

-ื—, --ืขืจืžื”=ื’ื•ื“ืœ
ืฆื™ื™ืŸ ืืช ื’ื•ื“ืœ ื”ืขืจื™ืžื” ื”ืžืงื•ืžื™ืช ืฉืœ ื”ืžื•ื“ื•ืœ ื‘ื‘ืชื™ื (ืชืงืฃ ืจืง ืขื‘ื•ืจ ืžื•ื“ื•ืœื™ Win16);
ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ืื™ื ื” ืขืจื™ืžื” ืžืงื•ืžื™ืช.

-I ื‘ืกืคืจื™ื™ื”
ื”ืชืขืœืžื• ื‘ื’ืœืœ ืชืื™ืžื•ืช ืขื ืžื”ื“ืจ C.

-ืง, --ืœื”ืจื•ื’ ื‘
ื”ืกืจ ืืช ืขื™ื˜ื•ืจื™ stdcall ืžืฉืžื•ืช ื”ืกืžืœื™ื ื‘ืงื•ื‘ืฅ ื”-.def ืฉื ื•ืฆืจ.
ืจืง ืžืฉืžืขื•ืชื™ ื‘ --ื‘ื”ื’ื“ืจื” ืžืฆื‘.

-K ื“ื’ืœื™ื
ื”ืชืขืœืžื• ื‘ื’ืœืœ ืชืื™ืžื•ืช ืขื ืžื”ื“ืจ C.

---large-address-aware
ื”ื’ื“ืจ ื“ื’ืœ ื‘ืงื•ื‘ืฅ ื”ื”ืคืขืœื” ื›ื“ื™ ืœื”ื•ื“ื™ืข โ€‹โ€‹ืœื˜ื•ืขืŸ ืฉื”ื™ื™ืฉื•ื ื”ื–ื” ืชื•ืžืš ื‘ื•
ืžืจื—ื‘ื™ ื›ืชื•ื‘ื•ืช ื’ื“ื•ืœื™ื ืž-2 ื’ื™ื’ื”-ื‘ื™ื™ื˜.

--ld-cmd=ld-ืคืงื•ื“ื”
ืฆื™ื™ืŸ ืืช ื”ืคืงื•ื“ื” ืœืฉื™ืžื•ืฉ ื›ื“ื™ ืœืงืฉืจ ืืช ืงื‘ืฆื™ ื”ืื•ื‘ื™ื™ืงื˜; ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ื”ื™ื ld.

-ืœ, --library-path=ื‘ืกืคืจื™ื™ื”
ื”ื•ืกืฃ ืืช ื”ืกืคืจื™ื™ื” ืฉืฆื•ื™ื ื” ืœืจืฉื™ืžืช ื”ืกืคืจื™ื•ืช ืฉืžื—ืคืฉื™ื
ื™ื™ื‘ื•ื โ€‹โ€‹ืกืคืจื™ื•ืช.

-ืœ, --ืกืคืจื™ื™ื”=ืฉื
ื™ื™ื‘ื ืืช ื”ืกืคืจื™ื™ื” ืฉืฆื•ื™ื ื”, ืžื—ืคืฉ ืกืคืจื™ื™ื” ืžืชืื™ืžื” libname.def ื”ืงื•ื‘ืฅ
ืกืคืจื™ื•ืช ืฉืฆื•ื™ื ื• ืขื -L ืื•ึนืคึผึฐืฆึดื™ึธื”.

-ืž16, -ืž32, -ืž 64
ืฆื•ืจ ืงื•ื“ ืฉืœ 16 ืกื™ื‘ื™ื•ืช, 32 ืกื™ื‘ื™ื•ืช ืื• 64 ืกื™ื‘ื™ื•ืช ื‘ื”ืชืืžื”.

-M, ---main-module=ืžื•ื“ื•ืœ
ื‘ืขืช ื‘ื ื™ื™ืช ืงื•ื‘ืฅ dll ืฉืœ 16 ืกื™ื‘ื™ื•ืช, ื”ื’ื“ืจ ืืช ื”ืฉื ืฉืœ ืžืงื‘ื™ืœื• ืœ-32 ืกื™ื‘ื™ื•ืช ืœ ืžื•ื“ื•ืœ. ื–ึถื”
ืžืฉืžืฉ ื›ื“ื™ ืœืื›ื•ืฃ ืฉืกื“ืจ ื”ื˜ืขื™ื ื” ืขื‘ื•ืจ ื”-dll ืฉืœ 16 ืกื™ื‘ื™ื•ืช ืชื•ืื ืœื–ื” ืฉืœ ื”-
ืื—ื“ 32 ืกื™ื‘ื™ื•ืช.

-ื , --dll-name=ืฉื dll
ื”ื’ื“ืจ ืืช ื”ืฉื ื”ืคื ื™ืžื™ ืฉืœ ื”ืžื•ื“ื•ืœ. ื”ื•ื ืžืฉืžืฉ ืจืง ื‘ืžื•ื“ื•ืœื™ื ืฉืœ Win16. ื‘ืจื™ืจืช ื”ืžื—ื“ืœ
ื”ื•ื ืœื”ืฉืชืžืฉ ื‘ืฉื ื”ื‘ืกื™ืก ืฉืœ ืงื•ื‘ืฅ ื”ืžืคืจื˜ (ืœืœื ื›ืœ ืกื™ื•ืžืช). ื–ื” ืžืฉืžืฉ ืขื‘ื•ืจ
KERNEL, ืžื›ื™ื•ื•ืŸ ืฉื”ื•ื ื—ื™ ื‘-KRNL386.EXE. ื–ื” ืœื ืฆืจื™ืš ืœื”ื™ื•ืช ื ื—ื•ืฅ ืื—ืจืช.

--nm-cmd=nm-ืคืงื•ื“ื”
ืฆื™ื™ืŸ ืืช ื”ืคืงื•ื“ื” ืฉื‘ื” ื™ืฉ ืœื”ืฉืชืžืฉ ื›ื“ื™ ืœืงื‘ืœ ืืช ืจืฉื™ืžืช ื”ืกืžืœื™ื ื”ืœื ืžื•ื’ื“ืจื™ื; ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ื”ื™ื nm.

--nxcompat=ื›ืŸ|ืœื
ืฆื™ื™ืŸ ืื ื”ืžื•ื“ื•ืœ ืชื•ืื ืœืชืžื™ื›ื” ื‘-no-exec. ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ื”ื™ื ื›ืŸ.

-ืื•, --ืคืœื˜=ืคื™ืœื”
ื”ื’ื“ืจ ืืช ื”ืฉื ืฉืœ ืงื•ื‘ืฅ ื”ืคืœื˜ (ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ื”ื™ื ืคืœื˜ ืกื˜ื ื“ืจื˜ื™). ืื ืงื•ื‘ืฅ ื”ืคืœื˜
ืฉื ืžืกืชื™ื™ื ื‘-.o, ืคืœื˜ ื”ื˜ืงืกื˜ ื ืฉืœื— ืœืงื•ื‘ืฅ ื–ืžื ื™ ืฉื ืืกืฃ ืœืื—ืจ ืžื›ืŸ
ื›ื“ื™ ืœื”ืคื™ืง ืืช ืงื•ื‘ืฅ ื”-.o ืฉืฆื•ื™ืŸ.

-ืจ, --res=rsrc.res
ื˜ืขืŸ ืžืฉืื‘ื™ื ืžืงื•ื‘ืฅ ื”ืžืฉืื‘ ื”ื‘ื™ื ืืจื™ ืฉืฆื•ื™ืŸ. ื” rsrc.res ื”ืงื•ื‘ืฅ ื™ื›ื•ืœ ืœื”ื™ื•ืช
ืžื•ืคืง ืžืงื•ื‘ืฅ ืžืฉืื‘ ืžืงื•ืจ ืขื wrc(1) (ืื• ืขื ืžืฉืื‘ ืฉืœ Windows
ืžึทื”ึฐื“ึตืจ).
ืืคืฉืจื•ืช ื–ื• ื ื—ื•ืฆื” ืจืง ืขื‘ื•ืจ ืงื‘ืฆื™ ืžืฉืื‘ื™ื ืฉืœ Win16, ืืœื” ืฉืœ Win32 ื™ื›ื•ืœื™ื ืคืฉื•ื˜
ืจืฉื•ื ื› ืงืœื˜ ืงื‘ืฆื™ื ื•ื™ื˜ื•ืคืœ ื‘ืื•ืคืŸ ืื•ื˜ื•ืžื˜ื™ ื‘ืฆื•ืจื” ื ื›ื•ื ื” (ืื ื›ื™ -r
ื”ืืคืฉืจื•ืช ืชืขื‘ื•ื“ ื’ื ืขื‘ื•ืจ ืงื‘ืฆื™ Win32).

--ืœืฉืžื•ืจ-ื˜ืžืคืจื˜ื•ืจื•ืช
ืืœ ืชืžื—ืง ืืช ื”ืงื‘ืฆื™ื ื”ื–ืžื ื™ื™ื ื”ืฉื•ื ื™ื ื‘ื ื™ื™ืช ื™ื™ืŸ ืžื™ื™ืฆืจ.

--ืชืช ืžืขืจื›ืช=ืชืช ืžืขืจื›ืช[:ื’ื“ื•ืœ[.ืงื˜ื™ืŸ]]
ื”ื’ื“ืจ ืืช ืชืช-ื”ืžืขืจื›ืช ืฉืœ ืงื•ื‘ืฅ ื”ื”ืคืขืœื”, ืฉื™ื›ื•ืœ ืœื”ื™ื•ืช ืื—ื“ ืžื”ื‘ืื™ื:
ืœื ื—ื ืขื‘ื•ืจ ืงื•ื‘ืฅ ื”ืคืขืœื” ืฉืœ ืฉื•ืจืช ืคืงื•ื“ื”,
ื—ืœื•ื ื•ืช ืขื‘ื•ืจ ืงื•ื‘ืฅ ื”ืคืขืœื” ื’ืจืคื™,
ื™ืœื™ื“ ืขื‘ื•ืจ dll ื‘ืžืฆื‘ ืžืงื•ืจื™,
ืœื”ืชื›ื•ื•ืฅ ืขื‘ื•ืจ ce dll.
ื ืงื•ื“ืช ื”ื›ื ื™ืกื” ืฉืœ ืงื•ื‘ืฅ ื”ืคืขืœื” ืฉืœ ืฉื•ืจืช ืคืงื•ื“ื” ื”ื™ื C ืจื’ื™ืœื” ืจืืฉื™ ืคื•ึผื ืงืฆึดื™ึธื”. ื wmain
ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ืคื•ื ืงืฆื™ื” ื‘ืžืงื•ื ื–ืืช ืื ืืชื” ืฆืจื™ืš ืืช ืžืขืจืš ื”ืืจื’ื•ืžื ื˜ื™ื ื›ื“ื™ ืœื”ืฉืชืžืฉ ื‘ืžื—ืจื•ื–ื•ืช Unicode.
ืœืงื•ื‘ืฅ ื”ืคืขืœื” ื’ืจืคื™ ื™ืฉ a Winmain ื ืงื•ื“ืช ื›ื ื™ืกื”.
ืœื—ืœื•ืคื™ืŸ, ื ื™ืชืŸ ืœืฆื™ื™ืŸ ื’ื ื’ืจืกืช ืชืช-ืžืขืจื›ืช ื’ื“ื•ืœื” ื•ืžื™ื ื•ืจื™ืช; ื‘ืจื™ืจืช ื”ืžื—ื“ืœ
ื’ืจืกืช ื”ืžืฉื ื” ื”ื™ื 4.0.

-ืืช, --ืœื ืžื•ื’ื“ืจ=ืกืžืœ
ืœื”ื•ืกื™ืฃ ืกืžืœ ืœืจืฉื™ืžืช ื”ืกืžืœื™ื ื”ืœื ืžื•ื’ื“ืจื™ื ื‘ืขืช ื”ืคืขืœืช ื”ืžืงืฉืจ. ื–ื” ืขื•ืฉื” ืืช ื–ื”
ื ื™ืชืŸ ืœืืœืฅ ืžื•ื“ื•ืœ ืกืคืฆื™ืคื™ ืฉืœ ืกืคืจื™ื™ื” ืกื˜ื˜ื™ืช ืœื”ื™ื›ืœืœ ื›ืืฉืจ
ืคืชืจื•ืŸ ื™ื‘ื•ื.

-ื‘, --ืžึดืœื•ึผืœึดื™
ื”ืฆื’ ืืช ืคืงื•ื“ื•ืช ื”ืžืฉื ื” ื”ืฉื•ื ื•ืช ื”ืžื•ืคืขืœื•ืช ืขืœ ื™ื“ื™ ื‘ื ื™ื™ืช ื™ื™ืŸ.

--ื’ึดืจึฐืกึธื”
ื”ืฆื’ ืืช ื’ืจืกืช ื”ืชื•ื›ื ื™ืช ื•ืฆื.

-ื•ื•, --ืื–ื”ืจื•ืช
ื”ืคืขืœ ืื–ื”ืจื•ืช.

SPEC ืงื•ื‘ืฅ ืชื—ื‘ื™ืจ


ื›ืœืœื™ ืชื—ื‘ื™ืจ
ืงื•ื‘ืฅ ืžืคืจื˜ ืฆืจื™ืš ืœื”ื›ื™ืœ ืจืฉื™ืžื” ืฉืœ ื”ืฆื”ืจื•ืช ืจื’ื™ืœื•ืช. ื”ืชื—ื‘ื™ืจ ื”ื›ืœืœื™ ื”ื•ื ื”
ื”ื‘ื:

ืกื™ื“ื•ืจ functype [ื“ื’ืœื™ื] ืฉื ื™ื™ืฆื•ื ( [ืืจื’ื•ื ื™ื...] ) [ืžื˜ืคืœ]
ืกื™ื“ื•ืจ ืžืฉืชื ื” [ื“ื’ืœื™ื] ืฉื ื™ื™ืฆื•ื ( [ื ืชื•ื ื™ื...] )
ืกื™ื“ื•ืจ ื—ื™ืฆื•ื ื™ [ื“ื’ืœื™ื] ืฉื ื™ื™ืฆื•ื [ืฉื ืกืžืœ]
ืกื™ื“ื•ืจ ื‘ื“ืœ [ื“ื’ืœื™ื] ืฉื ื™ื™ืฆื•ื [ (ืืจื’ื•ื ื™ื...) ]
ืกื™ื“ื•ืจ ืœืฉื•ื•ืช [ื“ื’ืœื™ื] ืฉื ื™ื™ืฆื•ื ื ืชื•ื ื™ื
# ื”ืขืจื•ืช

ื”ื”ืฆื”ืจื•ืช ื—ื™ื™ื‘ื•ืช ืœื”ืชืื™ื ืขืœ ืฉื•ืจื” ื‘ื•ื“ื“ืช, ืœืžืขื˜ ืื ืงืฆื” ื”ืฉื•ืจื” ื ืฉืœื— ื‘ืืžืฆืขื•ืช ื
ืชื• ื ื˜ื•ื™ ืื—ื•ืจื™. ื” # ืชื• ื‘ื›ืœ ืžืงื•ื ื‘ืฉื•ืจื” ื’ื•ืจื ืœืฉืืจ ื”ืฉื•ืจื” ืœื”ื™ื•ืช
ื”ืชืขืœืžื• ื›ื”ืขืจื”.

ืกื™ื“ื•ืจ ืžืฆื™ื™ืŸ ืืช ื”ืžืกืคืจ ื”ืกื™ื“ื•ืจื™ ื”ืžืชืื™ื ืœื ืงื•ื“ืช ื”ื›ื ื™ืกื”, ืื• '@' ืขื‘ื•ืจ
ื”ืงืฆืื” ืกื™ื“ื•ืจื™ืช ืื•ื˜ื•ืžื˜ื™ืช (Win32 ื‘ืœื‘ื“).

ื“ื’ืœื™ื ื”ื•ื ืกื“ืจื” ืฉืœ ื“ื’ืœื™ื ืื•ืคืฆื™ื•ื ืœื™ื™ื, ืฉืœืคื ื™ื”ื ืชื• '-'. ื”ื“ื’ืœื™ื ื”ื ืชืžื›ื™ื ื”ื:

-ื ื•ืจืœื™ื™
ื ืงื•ื“ืช ื”ื›ื ื™ืกื” ืื™ื ื” ืžื•ืฆื’ืช ื‘ืžืขืงื‘ื™ ื ื™ืคื•ื™ ื‘ืื’ื™ื ืžืžืกืจ (Win32 ื‘ืœื‘ื“).

-ืœืœื ืฉื
ื ืงื•ื“ืช ื”ื›ื ื™ืกื” ืชื™ื•ืฆื ืœืคื™ ืกื™ื“ื•ืจ ื‘ืžืงื•ื ืœืคื™ ืฉื. ื”ืฉื ื”ื•ื
ืขื“ื™ื™ืŸ ื–ืžื™ืŸ ืœื™ื™ื‘ื•ื.

-ret16 ื”ืคื•ื ืงืฆื™ื” ืžื—ื–ื™ืจื” ืขืจืš ืฉืœ 16 ืกื™ื‘ื™ื•ืช (Win16 ื‘ืœื‘ื“).

-ret64 ื”ืคื•ื ืงืฆื™ื” ืžื—ื–ื™ืจื” ืขืจืš ืฉืœ 64 ืกื™ื‘ื™ื•ืช (Win32 ื‘ืœื‘ื“).

-ื”ื™ืจืฉื
ื”ืคื•ื ืงืฆื™ื” ืžืฉืชืžืฉืช ื‘ืจื™ืฉื•ื CPU ื›ื“ื™ ืœื”ืขื‘ื™ืจ ืืจื’ื•ืžื ื˜ื™ื.

-ืคึผึฐืจึธื˜ึดื™
ืœื ื ื™ืชืŸ ืœื™ื™ื‘ื ืืช ื”ืคื•ื ืงืฆื™ื” ืžืงื‘ืฆื™ dll ืื—ืจื™ื, ื ื™ืชืŸ ืœื’ืฉืช ืืœื™ื” ืจืง
ื“ืจืš GetProcAddress.

-ืกื•ึนื“ึตืจ
ื ืงื•ื“ืช ื”ื›ื ื™ืกื” ืชื™ื•ื‘ื ืœืคื™ ืกื™ื“ื•ืจ ื‘ืžืงื•ื ืœืคื™ ืฉื. ื”ืฉื ื”ื•ื
ืขื“ื™ื™ืŸ ืžื™ื•ืฆื.

-arch=ืžืขื‘ื“[,ืžืขื‘ื“]
ื ืงื•ื“ืช ื”ื›ื ื™ืกื” ื–ืžื™ื ื” ืจืง ื‘ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ื”-CPU ืฉืฆื•ื™ื ื•. ื”
ืฉืžื•ืช win32 ื• win64 ืœื”ืชืื™ื ืœื›ืœ ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ื”ืžืขื‘ื“ ืฉืœ 32 ืกื™ื‘ื™ื•ืช ืื• 64 ืกื™ื‘ื™ื•ืช
ื‘ื”ืชืืžื”. ื‘ืงื‘ืฆื™ dll ืฉืœ 16 ืกื™ื‘ื™ื•ืช, ืฆื™ื•ืŸ -arch=win32 ื’ื•ืจื ืœื ืงื•ื“ืช ื”ื›ื ื™ืกื”
ืœื™ื™ืฆื ืžืžื•ื“ื•ืœ ื”ืขื˜ื™ืคื” ืฉืœ 32 ืกื™ื‘ื™ื•ืช.

ืคื•ื ืงืฆื™ื” ืกื™ื“ื•ืจื™ื
ืชื—ื‘ื™ืจ:
ืกื™ื“ื•ืจ functype [ื“ื’ืœื™ื] ืฉื ื™ื™ืฆื•ื ( [ืืจื’ื•ื ื™ื...] ) [ืžื˜ืคืœ]

ื”ืฆื”ืจื” ื–ื• ืžื’ื“ื™ืจื” ื ืงื•ื“ืช ื›ื ื™ืกื” ืœืคื•ื ืงืฆื™ื”. ืื‘ ื”ื˜ื™ืคื•ืก ืฉื”ื•ื’ื“ืจ ืขืœ ื™ื“ื™
ืฉื ื™ื™ืฆื•ื ( [ืืจื’ื•ื ื™ื...] ) ืžืฆื™ื™ืŸ ืืช ื”ืฉื ื”ื–ืžื™ืŸ ืขื‘ื•ืจ ืงื™ืฉื•ืจ ื“ื™ื ืžื™ ื•ืืช ื”ืคื•ืจืžื˜
ืฉืœ ื”ื˜ื™ืขื•ื ื™ื. ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘-'@' ื‘ืžืงื•ื ืฉื ื™ื™ืฆื•ื ืœื™ืฆื•ื ืจื’ื™ืœ ื‘ืœื‘ื“.

functype ืฆืจื™ืš ืœื”ื™ื•ืช ืื—ื“ ืž:

stdcall
ืขื‘ื•ืจ ืคื•ื ืงืฆื™ื™ืช Win32 ืจื’ื™ืœื”

ืคืกืงืœ ืขื‘ื•ืจ ืคื•ื ืงืฆื™ื™ืช Win16 ืจื’ื™ืœื”

cdecl ืขื‘ื•ืจ ืคื•ื ืงืฆื™ื™ืช Win16 ืื• Win32 ื‘ืืžืฆืขื•ืช ืžื•ืกื›ืžื” ืงืจื™ืืช C

varargs
ืขื‘ื•ืจ ืคื•ื ืงืฆื™ื” Win16 ืื• Win32 ื‘ืืžืฆืขื•ืช ืžื•ืกื›ืžื” C calling ืขื ืžืฉืชื ื”
ืžืกืคืจ ื˜ื™ืขื•ื ื™ื

ืฉื™ื—ื” ื–ื•
ืขื‘ื•ืจ ืคื•ื ืงืฆื™ื™ืช Win32 ื‘ืืžืฆืขื•ืช ืฉื™ื—ื” ื–ื• ื›ื ืก ืฉื™ื—ื•ืช (ืคืจืžื˜ืจ ืจืืฉื•ืŸ
ื‘-%ecx ื”ื™ืจืฉื ื‘-i386)

ื˜ื•ืขืŸ ืฆืจื™ืš ืœื”ื™ื•ืช ืื—ื“ ืื• ื›ืžื” ืžืชื•ืš:

ืžื™ืœื” (ืขืจืš ืœืœื ืกื™ืžืŸ ืฉืœ 16 ืกื™ื‘ื™ื•ืช)

ื—ึถืจึถื‘ (ืžื™ืœื” ื—ืชื•ืžื” 16 ืกื™ื‘ื™ื•ืช)

ืืจื•ืš (ืขืจืš ืžืกืคืจ ืฉืœื ื‘ื’ื•ื“ืœ ืžืฆื‘ื™ืข)

int64 (ืขืจืš ืžืกืคืจ ืฉืœื ืฉืœ 64 ืกื™ื‘ื™ื•ืช)

int128 (ืขืจืš ืžืกืคืจ ืฉืœื ืฉืœ 128 ืกื™ื‘ื™ื•ืช)

ืœืฆื•ืฃ (ืขืจืš ื ืงื•ื“ื” ืฆืคื” 32 ืกื™ื‘ื™ื•ืช)

ืœึฐื”ึทื›ืคึผึดื™ืœ (ืขืจืš ื ืงื•ื“ื” ืฆืคื” 64 ืกื™ื‘ื™ื•ืช)

ptr (ืžืฆื‘ื™ืข ืœื™ื ื™ืืจื™)

str (ืžืฆื‘ื™ืข ืœื™ื ื™ืืจื™ ืœืžื—ืจื•ื–ืช ASCII ืขื ืกื™ื•ืžืช ืืคืก)

wstr (ืžืฆื‘ื™ืข ืœื™ื ื™ืืจื™ ืœืžื—ืจื•ื–ืช Unicode ืขื ืกื™ื•ืžืช ืืคืก)

segptr (ืžืฆื‘ื™ืข ืžืคื•ืœื—)

segstr (ืžืฆื‘ื™ืข ืžืคื•ืœื— ืœืžื—ืจื•ื–ืช ASCII ืขื ืกื™ื•ืžืช ืืคืก).

ื”ืขืจื”: ืกื•ื’ื™ ื”ืžืฆื‘ื™ืขื™ื ืฉืœ 16 ืกื™ื‘ื™ื•ืช ื•ืžืคื•ืœื—ื™ื ืชืงืคื™ื ืจืง ืขื‘ื•ืจ ืคื•ื ืงืฆื™ื•ืช Win16.

ืžื˜ืคืœ ื”ื•ื ื”ืฉื ืฉืœ ืคื•ื ืงืฆื™ื™ืช C ื‘ืคื•ืขืœ ืฉืชื˜ืžื™ืข ืืช ื ืงื•ื“ืช ื”ื›ื ื™ืกื” ื”ื–ื•
ืžืฆื‘ 32 ืกื™ื‘ื™ื•ืช. ื ื™ืชืŸ ืœืฆื™ื™ืŸ ืืช ื”ืžื˜ืคืœ ื’ื ื‘ืชื•ืจ ืฉื dll.ืคื•ื ืงืฆื™ื” ื›ื“ื™ ืœื”ื’ื“ื™ืจ ืžื•ืขื‘ืจ
ืคื•ื ืงืฆื™ื” (ืื—ืช ืฉื”ื™ื™ืฉื•ื ืฉืœื” ื ืžืฆื ื‘-dll ืื—ืจ). ืื ืžื˜ืคืœ ืœื ืžืฆื•ื™ืŸ, ื–ื” ื›ืŸ
ื”ื”ื ื—ื” ื”ื™ื ืฉื–ื”ื” ืœ ืฉื ื™ื™ืฆื•ื.

ื“ื•ื’ืžื” ืจืืฉื•ื ื” ื–ื• ืžื’ื“ื™ืจื” ื ืงื•ื“ืช ื›ื ื™ืกื” ืœืงืจื™ืื” ืฉืœ 32 ืกื™ื‘ื™ื•ืช GetFocus() :

@ stdcall GetFocus() GetFocus

ื“ื•ื’ืžื” ืฉื ื™ื™ื” ื–ื• ืžื’ื“ื™ืจื” ื ืงื•ื“ืช ื›ื ื™ืกื” ืœืงืจื™ืื” ืฉืœ 16 ืกื™ื‘ื™ื•ืช CreateWindow() (ื”ืื•ืจื“ื™ื ืœ
100 ื”ื•ื ืจืง ื“ื•ื’ืžื”); ื–ื” ื’ื ืžืจืื” ื›ืžื” ืงื•ื•ื™ื ืืจื•ื›ื™ื ื ื™ืชืŸ ืœืคืฆืœ ื‘ืืžืฆืขื•ืช ื ื˜ื•ื™ ืื—ื•ืจื™:

100 ืคืกืงืœ CreateWindow(ptr ptr long s_word s_word s_word \
s_word ืžื™ืœื” ืžื™ืœื” ืžื™ืœื” ptr) WIN_CreateWindow

ื›ื“ื™ ืœื”ื›ืจื™ื– ืขืœ ืคื•ื ืงืฆื™ื” ื‘ืืžืฆืขื•ืช ืžืกืคืจ ืžืฉืชื ื” ืฉืœ ืืจื’ื•ืžื ื˜ื™ื, ืฆื™ื™ืŸ ืืช ื”ืคื•ื ืงืฆื™ื” ื›
varargs ื•ืœื”ื›ืจื™ื– ืขืœ ื–ื” ื‘ืงื•ื‘ืฅ C ืขื ืคืจืžื˜ืจ '...' ืขื‘ื•ืจ ืคื•ื ืงืฆื™ื™ืช Win32, ืื• ืขื
ืืจื’ื•ืžื ื˜ ื ื•ืกืฃ ืฉืœ VA_LIST16 ืขื‘ื•ืจ ืคื•ื ืงืฆื™ื” Win16. ืจืื” ืืช ืคื•ื ืงืฆื™ื•ืช wsprintf* ื‘
ืœื“ื•ื’ืžื user.exe.spec ื•-user32.spec.

ืžึดืฉืึฐืชึทื ึถื” ืกื™ื“ื•ืจื™ื
ืชื—ื‘ื™ืจ:
ืกื™ื“ื•ืจ ืžืฉืชื ื” [ื“ื’ืœื™ื] ืฉื ื™ื™ืฆื•ื ( [ื ืชื•ื ื™ื...] )

ื”ืฆื”ืจื” ื–ื• ืžื’ื“ื™ืจื” ืืช ืื—ืกื•ืŸ ื”ื ืชื•ื ื™ื ื›ืžื™ืœื™ื ืฉืœ 32 ืกื™ื‘ื™ื•ืช ืœืคื™ ื”ืกื“ืจ ืฉืฆื•ื™ืŸ.
ืฉื ื™ื™ืฆื•ื ื™ื”ื™ื” ื”ืฉื ื”ื–ืžื™ืŸ ืœืงื™ืฉื•ืจ ื“ื™ื ืžื™. ื ืชื•ื ื™ื ื™ื›ื•ืœ ืœื”ื™ื•ืช ืžืกืคืจ ืขืฉืจื•ื ื™
ืื• ืžืกืคืจ ืžืฉื•ืฉื” ืฉืœืคื ื™ื• "0x". ื”ื“ื•ื’ืžื” ื”ื‘ืื” ืžื’ื“ื™ืจื” ืืช ื”ืžืฉืชื ื” VariableA at
ืกื™ื“ื•ืจ 2 ื•ืžื›ื™ืœ 4 ืื™ื ื˜ืก:

2 ืžืฉืชื ื” VariableA(-1 0xff 0 0)

ื”ืฆื”ืจื” ื–ื• ืคื•ืขืœืช ืจืง ื‘ืงื‘ืฆื™ ืžืคืจื˜ ืฉืœ Win16. ื‘-Win32 ืืชื” ืฆืจื™ืš ืœื”ืฉืชืžืฉ ื—ื™ืฆื•ื ื™ ื‘ืžืงื•ื
(ืจืื” ืœืžื˜ื”).

ื—ื™ืฆื•ื ื™ ืกื™ื“ื•ืจื™ื
ืชื—ื‘ื™ืจ:
ืกื™ื“ื•ืจ ื—ื™ืฆื•ื ื™ [ื“ื’ืœื™ื] ืฉื ื™ื™ืฆื•ื [ืฉื ืกืžืœ]

ื”ืฆื”ืจื” ื–ื• ืžื’ื“ื™ืจื” ืขืจืš ืฉืžืžืคื” ืคืฉื•ื˜ ืœืกืžืœ C (ืžืฉืชื ื” ืื• ืคื•ื ืงืฆื™ื”).
ื–ื” ืขื•ื‘ื“ ืจืง ื‘ืงื‘ืฆื™ ืžืคืจื˜ ืฉืœ Win32. ืฉื ื™ื™ืฆื•ื ื™ืฆื‘ื™ืข ืขืœ ื”ืกืžืœ ืฉื ืกืžืœ ื–ึถื”
ื—ื™ื™ื‘ ืœื”ื™ื•ืช ืžื•ื’ื“ืจ ื‘ืงื•ื“ C. ืœื—ืœื•ืคื™ืŸ, ื–ื” ื™ื›ื•ืœ ืœื”ื™ื•ืช ื‘ืฆื•ืจื” ืฉื dll.ืฉื ืกืžืœ ืœ
ื”ื’ื“ืจ ืกืžืœ ืžื•ืขื‘ืจ (ื›ื–ื” ืฉื”ื™ื™ืฉื•ื ืฉืœื• ื ืžืฆื ื‘-dll ืื—ืจ). ืื ืฉื ืกืžืœ is
ืœื ืฆื•ื™ืŸ, ื”ื”ื ื—ื” ื”ื™ื ืฉื–ื”ื” ืœ ืฉื ื™ื™ืฆื•ื.

ื‘ึผึธื“ึธืœ ืกื™ื“ื•ืจื™ื
ืชื—ื‘ื™ืจ:
ืกื™ื“ื•ืจ ื‘ื“ืœ [ื“ื’ืœื™ื] ืฉื ื™ื™ืฆื•ื [ (ืืจื’ื•ื ื™ื...) ]

ื”ื›ืจื–ื” ื–ื• ืžื’ื“ื™ืจื” ืคื•ื ืงืฆื™ื™ืช stub. ื–ื” ื”ื•ืคืš ืืช ื”ืฉื ื•ืืช ื”ืกื™ื“ื•ืจ ืœื–ืžื™ื ื™ื ืขื‘ื•ืจ
ืงื™ืฉื•ืจ ื“ื™ื ืžื™, ืืš ื™ืคืกื™ืง ืืช ื”ื‘ื™ืฆื•ืข ืขื ื”ื•ื“ืขืช ืฉื’ื™ืื” ืื โ€‹โ€‹ื”ืคื•ื ืงืฆื™ื” ื”ื™ื
ื”ืชืงืฉืจื• ืื™ ืคืขื.

ืฉื•ื•ื” ืกื™ื“ื•ืจื™ื
ืชื—ื‘ื™ืจ:
ืกื™ื“ื•ืจ ืœืฉื•ื•ืช [ื“ื’ืœื™ื] ืฉื ื™ื™ืฆื•ื ื ืชื•ื ื™ื

ื”ื›ืจื–ื” ื–ื• ืžื’ื“ื™ืจื” ืกื™ื“ื•ืจ ื›ืขืจืš ืžื•ื—ืœื˜. ืฉื ื™ื™ืฆื•ื ื™ื”ื™ื” ื”ืฉื
ื–ืžื™ืŸ ืœืงื™ืฉื•ืจ ื“ื™ื ืžื™. ื ืชื•ื ื™ื ื™ื›ื•ืœ ืœื”ื™ื•ืช ืžืกืคืจ ืขืฉืจื•ื ื™ ืื• ืžืกืคืจ ื”ืงืกื“ืชื™ ืฉืœืคื ื™ื•
"0x".

ืžื—ื‘ืจื™ื


ื‘ื ื™ื™ืช ื™ื™ืŸ ืื ืฉื™ื ืจื‘ื™ื ืขื‘ื“ื• ืขืœื™ื• ื‘ืžื”ืœืš ื”ืฉื ื™ื. ื”ืžื—ื‘ืจื™ื ื”ืจืืฉื™ื™ื ื”ื ืจื•ื‘ืจื˜ ื’'ื™ื™.
ืืžืฉื˜ื“ื˜, ืืœื›ืกื ื“ืจ ื’'ื•ืœื™ืืจื“, ืžืจื˜ื™ืŸ ืคื•ืŸ ืœื•ืื™ืก, ืื•ืœืจื™ืš ื•ื•ื™ื™ื’ื ื“ ื•ืืจื™ืง ื™ืื ื’ื“ื™ื™ืœ. ืจื‘
ืื ืฉื™ื ืื—ืจื™ื ืชืจืžื• ืชื›ื•ื ื•ืช ื—ื“ืฉื•ืช ื•ืชื™ืงื•ื ื™ ื‘ืื’ื™ื. ืœืจืฉื™ืžื” ืžืœืื”, ืขื™ื™ืŸ ื‘-git
ื‘ื™ืฆื•ืข ื™ื•ืžื ื™ื.

ื”ืฉืชืžืฉ ื‘ื‘ื ื™ื™ืช ื™ื™ืŸ ื‘ืื™ื ื˜ืจื ื˜ ื‘ืืžืฆืขื•ืช ืฉื™ืจื•ืชื™ onworks.net


ืฉืจืชื™ื ื•ืชื—ื ื•ืช ืขื‘ื•ื“ื” ื‘ื—ื™ื ื

ื”ื•ืจื“ ืืคืœื™ืงืฆื™ื•ืช Windows & Linux

  • 1
    Phaser
    Phaser
    Phaser ื”ื™ื ืคืชื™ื—ื” ืžื”ื™ืจื”, ื—ื™ื ืžื™ืช ื•ืžื”ื ื”
    ืžืกื’ืจืช ืžืฉื—ืง ืžืงื•ืจ HTML5 ืฉืžืฆื™ืขื”
    ืขื™ื‘ื•ื“ WebGL ื•-Canvas ืœืจื•ื—ื‘
    ื“ืคื“ืคื ื™ ืื™ื ื˜ืจื ื˜ ืฉื•ืœื—ื ื™ื™ื ื•ื ื™ื™ื“ื™ื. ืžืฉื—ืงื™ื
    ื™ื›ื•ืœ ืœื”ื™ื•ืช ืฉื•ืชืฃ...
    ื”ื•ืจื“ ืืช Phaser
  • 2
    ืžื ื•ืข VASSAL
    ืžื ื•ืข VASSAL
    VASSAL ื”ื•ื ืžื ื•ืข ืžืฉื—ืง ืœื™ืฆื™ืจื”
    ื’ืจืกืื•ืช ืืœืงื˜ืจื•ื ื™ื•ืช ืฉืœ ืœื•ื— ืžืกื•ืจืชื™
    ื•ืžืฉื—ืงื™ ืงืœืคื™ื. ื–ื” ืžืกืคืง ืชืžื™ื›ื” ืขื‘ื•ืจ
    ืขื™ื‘ื•ื“ ื•ืื™ื ื˜ืจืืงืฆื™ื” ืฉืœ ื—ืœืงื™ ืžืฉื—ืง,
    ื•...
    ื”ื•ืจื“ ืืช VASSAL Engine
  • 3
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF ื”ื™ื ืกืคืจื™ื™ืช Java ืœื™ืฆื™ืจื”
    ื•ืขืจื™ื›ืช ืงื‘ืฆื™ PDF ืขื LGPL ื•
    ืจื™ืฉื™ื•ืŸ ืงื•ื“ ืคืชื•ื— MPL. OpenPDF ื”ื•ื ื”
    ื™ื•ืจืฉ ื”ืงื•ื“ ื”ืคืชื•ื— LGPL/MPL ืฉืœ iText,
    ...
    ื”ื•ืจื“ ืืช OpenPDF - Fork of iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - ืžืขืจื›ืช ืœืื•ื˜ื•ืžื˜ื™ื•ืช
    ื ื™ืชื•ื—ื™ื ื’ื™ืื•ื’ืจืคื™ื™ื - ื”ื•ื ื’ื™ืื•ื’ืจืคื™
    ืชื•ื›ื ืช ืžืขืจื›ืช ืžื™ื“ืข (GIS) ืขื
    ื™ื›ื•ืœื•ืช ืขืฆื•ืžื•ืช ืœื’ื™ืื•ื“ื˜ื”
    ืขื™ื‘ื•ื“ ื•ืื ื”...
    ื”ื•ืจื“ ืืช SAGA GIS
  • 5
    ืืจื’ื– ื›ืœื™ื ืขื‘ื•ืจ Java/JTOpen
    ืืจื’ื– ื›ืœื™ื ืขื‘ื•ืจ Java/JTOpen
    ืืจื’ื– ื”ื›ืœื™ื ืฉืœ IBM ืขื‘ื•ืจ Java / JTOpen ื”ื•ื ื
    ืกืคืจื™ื™ืช ืžื—ืœืงื•ืช Java ื”ืชื•ืžื›ื•ืช ื‘
    ืชื›ื ื•ืช ืœืงื•ื—/ืฉืจืช ื•ืื™ื ื˜ืจื ื˜
    ื“ื’ืžื™ื ืœืžืขืจื›ืช ืขื OS/400,
    i5/OS, o...
    ื”ื•ืจื“ ืืช ืืจื’ื– ื”ื›ืœื™ื ืขื‘ื•ืจ Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (ืื• D3 ืขื‘ื•ืจ ืžืกืžื›ื™ื ืžื‘ื•ืกืกื™ ื ืชื•ื ื™ื)
    ื”ื™ื ืกืคืจื™ื™ืช JavaScript ื”ืžืืคืฉืจืช ืœืš
    ืœื™ื™ืฆืจ ื ืชื•ื ื™ื ื“ื™ื ืžื™ื™ื ื•ืื™ื ื˜ืจืืงื˜ื™ื‘ื™ื™ื
    ื”ื“ืžื™ื•ืช ื‘ื“ืคื“ืคื ื™ ืื™ื ื˜ืจื ื˜. ืขื D3
    ืืชื”...
    ื”ื•ืจื“ ืืช D3.js
  • ืขื•ื“ ยป

ืคืงื•ื“ื•ืช ืœื™ื ื•ืงืก

Ad