
рдкрд░рд┐рдЪрдп
рд╣рд╛рдп рд╣рдорд░! рдореИрдВ рдПрдХ рдмрд╣реБрдд рдкреБрд░рд╛рдиреЗ рд╣реИрдВрдбрд╣реЗрд▓реНрдб рдХрдВрдкреНрдпреВрдЯрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдкреНрд▓реАрдХреЗрд╢рди рд▓рд┐рдЦрдиреЗ рдХреЗ рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рдЬреЛ рдХрд┐ 2001 рдХреЗ рд╕рд╛рдЗрдмрд┐рдХреЛ Xtreme рдХреЗ рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рдерд╛ред рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ 2000 рдХреЗ рджрд╢рдХ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдПрдХ рдореЛрдмрд╛рдЗрд▓ рдбреЗрд╡рд▓рдкрд░ рдХреИрд╕реЗ рд░рд╣рддреЗ рдереЗ, рдмрд┐рд▓реНрд▓реА рдХреЗ рд▓рд┐рдП рд╕реНрд╡рд╛рдЧрдд рд╣реИред
Cybiko Xtreme рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдЙрдкрдХрд░рдг рдореЗрд░реЗ рд▓рд┐рдП рджреВрд░ рдХреЗ 2002 рдореЗрдВ рдЖрдпрд╛ рдФрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЦреБрд╢ рд╣реБрдЖред рдореИрдВ рд╕рдВрдЪрд╛рд░ рдХреНрд╖рдорддрд╛рдУрдВ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рд╢рд╣рд░ рдореЗрдВ рдореИрдВ рдРрд╕реЗ рдкреАрдбреАрдПрдПрд╕ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рд╕реЗ рдХрднреА рдирд╣реАрдВ рдорд┐рд▓рд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдмреИрдардиреЗ рдХреЗ рдмрд┐рдирд╛ рдХрдИ рдЧреЗрдо рдЦреЗрд▓рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╢рд╛рдирджрд╛рд░ рдереАред рдХрдИ рдорд╛рдпрдиреЛрдВ рдореЗрдВ, рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдкреАрдбреАрдП рдХреА рдиреЗрдЯрд╡рд░реНрдХ рдХреНрд╖рдорддрд╛рдУрдВ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд░реЗрдбрд┐рдпреЛ рдореЗрд╖ рдиреЗрдЯрд╡рд░реНрдХ рдЪреБрдирд╛ред рд╕реАрдзреЗ рддреМрд░ рдкрд░ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ 100 рдореАрдЯрд░ рдХреА рджреВрд░реА рдкрд░ рдЖрдкрд╕ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рджреВрд╕рд░реЗ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рдЬреБрдбрд╝рдирд╛ рд╕рдВрднрд╡ рдерд╛, рдФрд░ рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдПрдХ рдШрдиреЗ рдиреЗрдЯрд╡рд░реНрдХ рдХрд╡рд░реЗрдЬ рдХреЗ рд╕рд╛рде, рджреВрд░реА рдЕрд╕реАрдорд┐рдд рдереАред рдбрд┐рд╡рд╛рдЗрд╕ рдореЗрдВ рдЖрдкрдХреА рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЛ рднрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рдерд╛ (рдпрд╣ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рдлреЛрдЯреЛ рд╕рдВрд▓рдЧреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЧреНрд░реЗрд╕реНрдХреЗрд▓ рдбрд┐рд╕реНрдкреНрд▓реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рдордЭ рд╣реЛрдЧрд╛), рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рди рд░реБрдЪрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЪреИрдЯ рдХрд░реЗрдВ, рдирдП рджреЛрд╕реНрддреЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░реЗрдВ, рдЖрджрд┐ред рдпрд╣ рдЗрд╕ рд╕рднреА рд╕реЛрд╢рд▓ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗ рдорд┐рд▓рддрд╛ рдЬреБрд▓рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬрд╣рд╛рдБ рддрдХ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдРрд╕рд╛ рдХреЛрдИ рд╢рдмреНрдж рдЕрднреА рддрдХ рдореМрдЬреВрдж рдирд╣реАрдВ рдерд╛ред рдпрджрд┐ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЙрдкрдХрд░рдг рдереЗ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧреА, рд╣рд╛рд▓рд╛рдВрдХрд┐, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЧрд▓рдд рд╣реБрдЖред
рдЕрдкрдиреА рдкреБрд░рд╛рдиреА рдЪреАрдЬреЛрдВ рдореЗрдВ рдЗрд╕ рдкреАрдбреАрдП рдХреЛ рдкрд╛рдХрд░, рдореИрдВ рдкреЛрдиреЛрд╕реНрдЯреИрд▓реНрдЬреАрдЬ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдкреБрд░рд╛рдиреЗ рдЦреЗрд▓ рдЦреЗрд▓рдирд╛ рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рдерд╛ (рдлрд┐рд░ рднреА, рд╡реЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдирдП рд▓реЛрдЧреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдирд╣реАрдВ рджрд┐рдЦрддреЗ рд╣реИрдВ), рд▓реЗрдХрд┐рди рдПрдХ рдЖрд╡реЗрджрди рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ рдпрд╣ рдорд╣рд╕реВрд╕ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдкрд╣рд▓реЗ рдореЛрдмрд╛рдЗрд▓ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреИрд╕реЗ рд░рд╣рддреЗ рдереЗ, рдФрд░ рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рдерд╛ред
рдЖрд╡реЗрджрди рдХрд╛ рд╡рд┐рдЪрд╛рд░
рдЪреВрдВрдХрд┐, рдореЗрд░реА рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреА рдкреНрд░рдХреГрддрд┐ рд╕реЗ, рдореИрдВ рд╕реВрдЪрдирд╛ рд╕реБрд░рдХреНрд╖рд╛ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реВрдВ рдФрд░ рдпрд╣ рд╡рд┐рд╖рдп рдореЗрд░реЗ рд▓рд┐рдП рдмреЗрд╣рдж рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдореИрдВрдиреЗ рдЙрд╕реА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рд╕рдмрд╕реЗ рд╕рд░рд▓ (рдФрд░ рдХрдо рд╕реЗ рдХрдо рдХреБрдЫ рдЙрдкрдпреЛрдЧреА?) рдореБрдЭреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди "рдкрд╛рд╕рд╡рд░реНрдб рдореИрдиреЗрдЬрд░" рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛ред рдпрд╣ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЖрдкрдХреЛ рдпрд╣ рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдпреВрдЬрд░ рдЗрдВрдЯрд░рдлреЗрд╕ рдХрд╛ рд╡рд┐рдХрд╛рд╕, рдФрд░ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо (рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд╕рд╛рде рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдХрдВрдЯреЗрдирд░ рдХрд╛ рднрдВрдбрд╛рд░рдг) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдХрдВрдЯреЗрдирд░ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлреА рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВрдиреЗ рддрдерд╛рдХрдерд┐рдд
XOR рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред рдХреБрдВрдЬреА рдорд╛рд╕реНрдЯрд░ рдкрд╛рд╕рд╡рд░реНрдб рд╣реИред рдЗрд╕ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХреА рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд╝рд┐рдХ рддрд╛рдХрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓рдВрдмрд╛рдИ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИ, рдФрд░ рдЗрд╕реЗ рдЧрдВрднреАрд░ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХрд╛ рдПрдХ рдЧрдВрднреАрд░ рдкреНрд▓рд╕ рд╣реИ - рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред рдЪреВрдВрдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдордиреЛрд░рдВрдЬрди рдкреНрд░рдпреЛрдЬрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рдРрд╕реЗ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдЖрджрд░реНрд╢ рд╣реИред
рдПрдореБрд▓реЗрдЯрд░
Cybiko Xtreme рдХреЛ рдПрдХ рдЖрдзреБрдирд┐рдХ рдХрдВрдкреНрдпреВрдЯрд░ рд╕реЗ рдЬреЛрдбрд╝рдирд╛ рдПрдХ рдЬрдЯрд┐рд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдПрдореБрд▓реЗрдЯрд░ рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдЯреЗрд╕реНрдЯ рд▓реЙрдиреНрдЪ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ (рд╕реМрднрд╛рдЧреНрдп рд╕реЗ рдпрд╣ рд╣реИ)ред
рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЪрд┐рддреНрд░ рдореЗрдВ рдЙрдкрд╕реНрдерд┐рддрд┐ рджрд┐рдЦрд╛рдИ рдЧрдИ рд╣реИред

рдПрдореБрд▓реЗрдЯрд░ рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВред
рдпрд╣рд╛рдВ рдкрд╛рдП рдЧрдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░
, "рдХрдВрд╕реЛрд▓" рд╡рд┐рдВрдбреЛ рдореЗрдВ "рднреЗрдЬреЗрдВ" рдмрдЯрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╡реЗрджрди рднреЗрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдореИрдВрдиреЗ рдХреИрд╕реЗ рдХреЛрд╢рд┐рд╢ рдХреА, рдореИрдВ рд╕рдлрд▓ рдирд╣реАрдВ рд╣реБрдЖред рдкреНрд▓реИрдиреЗрдЯ рд╕рд╛рдЗрдмрд┐рдХреЛ рдлреЛрд░рдо (рджреБрд░реНрднрд╛рдЧреНрдпрд╡рд╢ рдлреЛрд░рдо рдлрд┐рд▓рд╣рд╛рд▓ рдмрдВрдж рд╣реИ) рдореЗрдВ рдПрдХ рдЯреВрд▓ рдХрд╛ рд▓рд┐рдВрдХ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдЖрдк рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рд╕рд╛рдЗрдмрд┐рдХреЛ рд░реИрдо рдбрд┐рд╕реНрдХ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рд╕рдВрдХрд▓рд┐рдд рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╕рд╛рде рд░реИрдо-рдбрд┐рд╕реНрдХ рдмрдирд╛рдирд╛ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдПрдореБрд▓реЗрдЯрд░ рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рдПрд╕рдбреАрдХреЗ
рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдПрд╕рдбреАрдХреЗ рдвреВрдВрдврдирд╛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рдерд╛ред рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдЕрдирдкреИрдХ рдХрд░рдиреЗ рдФрд░ рдЙрд╕рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдбреЙрдХреНрдЯрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкрд░ рдзреНрдпрд╛рди рдЖрдХрд░реНрд╖рд┐рдд рдХрд┐рдпрд╛, рдЬреЛ рдЗрд╕ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЛ, рдЖрд╡реЗрджрди рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдХрд┐рд╕ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрд╣ рд╕рдордЭрд╛рдиреЗ рдореЗрдВ рдПрдХ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рдорджрдж рдмрдиреАред
рдореБрдЭреЗ рдбреЗрдореЛ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдХрдИ рд╕реИрдВрдкрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдорд┐рд▓реЗред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рдЖрд╡реЗрджрди рдереЗ, рдЬреЛ рдХрджрдо рд╕реЗ рдХрджрдо рд╕рд╛рдЗрдмрд┐рдХреЛ Xtreme рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЛ рд╕рдордЭрд╛рдпрд╛ред рд╕рдм рдХреБрдЫ рд╕рд░рд▓, рд╕реБрд▓рдн рдФрд░ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдп рд╣реИред
рдХреЛрдб рд▓реЗрдЦрди
рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╕рдВрд░рдЪрдирд╛ рдЬреЛ рд╕рд╛рдордЧреНрд░реА рдореЗрдВ рдиреНрдпреВрдирддрдо рд╣реИ, рдЙрд╕реЗ рдиреАрдЪреЗ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╕рдВрд░рдЪрдирд╛project res root.inf src source1.c тАж make.bat
Root.inf рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдореЗрдЯрд╛-рдбреЗрдЯрд╛ рд╣реЛрддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддреН рдЗрд╕рдХреЗ рдкреНрд░рдХрд╛рд░ (рдПрдкреНрд▓рд┐рдХреЗрд╢рди, рдЧреЗрдо рдпрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА), рд╕рдВрд╕реНрдХрд░рдг, рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдиреНрдпреВрдирддрдо рд╕рдВрд╕реНрдХрд░рдг (рдПрдВрдбреНрд░реЙрдЗрдб рдХреА рддрд░рд╣), рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рдирд╛рдо, рдЖрджрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реАред
Make.bat рдлрд╝рд╛рдЗрд▓ рдореЗрдВ sdk рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдкреВрд░реА рд╡рд┐рдзрд╛рдирд╕рднрд╛ Cybiko C Compiller рдХреЙрд▓ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдХреА рдЬрд╛рддреА рд╣реИ:
"C:\Program Files (x86)\Cybiko\Cybiko_SDK\bin\vcc" -R0 src/*.c res/*.help res/*.inf -o passwords_master.app
рдорд╣рддреНрд╡рдкреВрд░реНрдг рдиреЛрдЯ: vcc.exe рдХреЗ рд▓рд┐рдП рд╡рд┐рдВрдбреЛрдЬ 7 рдкрд░ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рд╡рд┐рдВрдбреЛрдЬ рдПрдХреНрд╕рдкреА (рд╕рд░реНрд╡рд┐рд╕ рдкреИрдХ 2) рдореЗрдВ рд╕рдВрдЧрддрддрд╛ рдореЛрдб рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЕрдиреНрдпрдерд╛ рдХрдВрдкрд╛рдЗрд▓рд░ рд╢реБрд░реВ рд╣реЛрдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИред
Src рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓рд┐рдП рд╕реЛрд░реНрд╕ рдХреЛрдб рд╣реЛрддрд╛ рд╣реИред рд╕рдВрдХрд▓рди рдкрд░рд┐рдгрд╛рдо рдПрдХ * .app рдлрд╝рд╛рдЗрд▓ рд╣реИред
рд╕рдВрдкреВрд░реНрдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд▓реЗрдЦ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдХреЗрд╡рд▓ рдмрд╣реБрдд рд╢реБрд░реБрдЖрдд рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ред рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рд╕рд╡рд╛рд▓ рд╣реИрдВ, рддреЛ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдпрд╛ рдкреАрдПрдо рд╕реЗ рдкреВрдЫреЗрдВред
рдпрд╣ рд╕рдм рдореБрдЦреНрдп рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдХреЙрд▓ рдХрд░рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕рдВрджрд░реНрдн рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ:
рдкреНрд░рд╛рд░рдВрдн long init_module(struct module_t * main_module);
рдЖрд░рдВрднреАрдХрд░рдг рдХреЗ рдмрд╛рдж, main_module рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рд╕рдВрджрд░реНрдн рдФрд░ рд╡рд░реНрддрдорд╛рди рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рдВрдХреЗрдд рд╣реЛрддреЗ рд╣реИрдВред
рдЕрдЧрд▓рд╛, рдЖрдкрдХреЛ рдореБрдЦреНрдп рдлрд╝реЙрд░реНрдо рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
рдПрдХ рдорд╛рд╕реНрдЯрд░ рдлреЙрд░реНрдо рдмрдирд╛рдПрдБ struct cFrameForm * ptr_main_form = malloc(sizeof(struct cFrameForm)); cFrameForm_ctor(ptr_main_form, "Passwords Master", main_module.m_process);
рдЬрд╛рдБрдЪ рдХрд░реЗрдВ рдХрд┐ рдХреНрдпрд╛ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдПрдХ рдкрд╛рд╕рд╡рд░реНрдб рдХрдВрдЯреЗрдирд░ рд╣реИ:
рдХрдВрдЯреЗрдирд░ рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛ int check_database() { struct FileInput * ptr_file_input = (struct FileInput *) malloc(sizeof(struct FileInput)); FileInput_ctor_Ex(ptr_file_input, DATABASE_FILE); if (FileInput_is_good(ptr_file_input)) { FileInput_dtor(ptr_file_input, FREE_MEMORY); return 0; } FileInput_dtor(ptr_file_input, FREE_MEMORY); return -1; }
рд╣рдо рдорд╛рд╕реНрдЯрд░ рдкрд╛рд╕рд╡рд░реНрдб рдЗрдирдкреБрдЯ рдбрд╛рдпрд▓реЙрдЧ рдмреЙрдХреНрд╕ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВред рдпрджрд┐ рдХрдВрдЯреЗрдирд░ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╣реИ, рддреЛ рд╣рдо рджрд░реНрдЬ рдХрд┐рдП рдЧрдП рдорд╛рд╕реНрдЯрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд╕рд╛рде рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рдХреЛрдИ рдХрдВрдЯреЗрдирд░ рдирд╣реАрдВ рдерд╛, рддреЛ рдПрдХ рдирдпрд╛ рдХрдВрдЯреЗрдирд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рджрд░реНрдЬ рдХрд┐рдП рдЧрдП рдорд╛рд╕реНрдЯрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдорд╛рд╕реНрдЯрд░ рдкрд╛рд╕рд╡рд░реНрдб рджрд░реНрдЬ рдХрд░реЗрдВ void get_master_password(struct cFrameForm * ptr_form, char * master_password) {
рдЖрд╡реЗрджрди рдХрд╛ рдЖрдЧреЗ рдХрд╛ рд╕рд╛рд░рд╛ рдХрд╛рдо рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рдПрдХ рдЪрдХреНрд░ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдореБрдЦреНрдп рдлреЙрд░реНрдо рдмрдВрдж рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддрд╛ред
рд╕рдВрджреЗрд╢ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг while (ptr_form->ModalResult != mrQuit) { struct Message * ptr_message = cWinApp_get_message(ptr_form->CurrApplication, 0, 1, MSG_USER); switch(ptr_message->msgid) { case MSG_SHUTUP:
рдПрдореБрд▓реЗрдЯрд░ рдореЗрдВ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рдХрд╛рдо рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдиреАрдЪреЗ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

рдкреВрд░реНрдг рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рд╕рд╛рде, рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ
рд▓рд┐рдВрдХ рдкрд░ github рдкрд░ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИредрдЕрд╕рд▓реА рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ
рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдХрд╣рд╛, рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рд▓реЙрдиреНрдЪ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХрдВрдкреНрдпреВрдЯрд░ рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрдмрд┐рдХреЛ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЖрдзреБрдирд┐рдХ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдпрд╣рд╛рдВ рдорд┐рд▓реЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдореИрдВ рд╡рд░реНрдЪреБрдЕрд▓ рдмреЙрдХреНрд╕ рдореЗрдВ рдЪрд▓ рд░рд╣реЗ рд╡рд┐рдВрдбреЛрдЬ 2000 рдХреЗ рд╕рд╛рде рд╕рд╛рдЗрдмрд┐рдХреЛ рдХреЛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ, рдореИрдВ рдпрд╣ рдиреЛрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдо рдиреЗ рд╕рд╛рдЗрдмрд┐рдХреЛ рдХреЛ рдХреЗрд╡рд▓ рддрдм рджреЗрдЦрд╛ рдЬрдм рдпрд╣ рдпреВрдПрд╕рдмреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рдерд╛ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╢рд╛рдпрдж рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореИрдиреБрдЕрд▓ рдХреЗ рд▓реЗрдЦрдХ рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдХрд┐ рдЙрдиреНрд╣реЗрдВ USB рд╡рд░реНрдЪреБрдЕрд▓ рдмреЙрдХреНрд╕ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЗрд╕ рдорд╢реАрди рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдерд╛рдпреА рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдиреАрдЪреЗ рджреА рдЧрдИ рддрд╕реНрд╡реАрд░ рдореЗрдВ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХрд╛ рдкрд░рд┐рдгрд╛рдо:

рдореЗрд░реЗ рдЖрд╡реЗрджрди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
рдирд┐рд╖реНрдХрд░реНрд╖
рдореЗрд░реЗ рдкрд╛рд╕ рд╕рд╛рдЗрдмрд┐рдХреЛ Xtreme рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕рд╛рд░реА рдЕрджреНрднреБрдд рдпрд╛рджреЗрдВ рдЬреБрдбрд╝реА рд╣реБрдИ рд╣реИрдВ, рдФрд░ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдЗрд╕ рдЕрджреНрднреБрдд рдЙрдкрдХрд░рдг рдХреЛ рдЫреВрдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдерд╛ред рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдореИрдВ рдЗрд╕рдХреЗ рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рдХреЛ рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж рдХрд╣рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдореИрдВ рд╕рд╛рдЗрдмрд┐рдХреЛ рдкрд░ рдПрдореБрд▓реЗрдЯрд░, рдордВрдЪреЛрдВ рдФрд░ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рдХреЛ рдзрдиреНрдпрд╡рд╛рдж рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдореЗрд░реА рдкрддреНрдиреА рдХреЛ рд╡реАрдбрд┐рдпреЛ рд╢реВрдЯ рдХрд░рдиреЗ рдФрд░ рдЗрд╕ рд▓реЗрдЦ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЙрдирдХреА рдорджрдж рдХреЗ рд▓рд┐рдПред
рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рд╕рднреА рдХрд╛ рдзрдиреНрдпрд╡рд╛рдж!