Exe рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП pyinstaller рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИ

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



рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛:

  1. рд╕реАрдкреАрдереЙрди 2.6.5 ред рдкреВрдЫреЗрдВ рдХрд┐ 2.7 рдпрд╛ 3.x рдХреНрдпреЛрдВ рдирд╣реАрдВ? рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд pywin рд╕рдВрд╕реНрдХрд░рдг, pyinstaller рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреЗрд╡рд▓ 2.6 рдФрд░ рд╕рд╣рд┐рдд рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдиреБрдХреВрд▓ рд╣реИ
  2. pyinstaller 1.4 r854 (рдЙрдкрдпреЛрдЧ рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рд╕рдордп, рдпрд╣ рдЕрдВрддрд┐рдо рд╕рдВрд╢реЛрдзрди рдерд╛)
  3. pywin32-214.win32-py2.6 sourceforge рдкрд░ рдЙрдкрд▓рдмреНрдз рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рд╣реИред рдирд┐рд░реНрднрд░рддрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП pyinstaller рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЙрдиреНрд╣реЗрдВ рдЗрд╕рд╕реЗ рдЗрдВрдХрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЕрдВрддрд┐рдо рдЕрджреНрдпрддрди 09 рддрд╛рд░реАрдЦ рд╕реЗ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ рд╣реИ)
  4. UPX 3.0.7 - рдлрд╝рд╛рдЗрд▓ рд╕рдВрдкреАрдбрд╝рди рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ




рдореИрдиреБрдЕрд▓ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдирд┐рд░реНрд╡рд╛рд╕рди рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдпрд╣ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

  1. Configure.py рдЪрд▓рд╛рдПрдБ, рдЬреЛ рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рднреА рдШрдЯрдХреЛрдВ рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдЧрд╛ (рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдмрджрд▓рддреЗ рд╕рдордп, UPX рдХреЛ рдЬреЛрдбрд╝рддреЗ / рдирд┐рдХрд╛рд▓рддреЗ рд╕рдордп, рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдмрджрд▓рддреЗ рд╣реБрдП, рдЖрджрд┐)
  2. Pinstaller рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ MakeSpec.py рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрд╡рд╢реНрдпрдХ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВ
  3. рдПрдХ рд╣реА рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ Build.py рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд╡рд┐рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдкрде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, exe рдмрдирд╛рдПрдБ




рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ pyinstaller рдореЗрд░реЗ рдЕрдЬрдЧрд░ рдлрд╝реЛрд▓реНрдбрд░ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкрде) рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИ, рдФрд░ рдЕрдиреНрдп рдбрд┐рд╕реНрдХ рдкрд░ рд╕реНрд░реЛрдд рд╣реИрдВ, рдореИрдВрдиреЗ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдкрдереЛрдВ рдХреЗ рд╕рд╛рде shamanism рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдФрд░ рд▓рдЧрд╛рддрд╛рд░ рдмрд▓реНрд▓реЗрдмрд╛рдЬреА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдорд╛рди рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдЕрдм рдкрд╛рд░реНрд╕ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред ред



рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рдкрд░рд┐рднрд╛рд╖рд┐рдд рд▓рдХреНрд╖реНрдп:

  1. рдореЗрдХрд╕реНрдкреАрдХ рдФрд░ рдмрд┐рд▓реНрдб рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рд╕реНрдкреЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд▓рдЧрд╛рддрд╛рд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реЗ рдЯреБрдХрдбрд╝реА
  2. рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рд╕рдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕рдорд╛рдкреНрдд exe рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛




рд╕реНрд╡рдпрдВ рдмреИрдЯ-рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди (рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдЯрд┐рдкреНрдкрдгреА, рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╛рдкреНрдд рдмреИрдЪ рдлрд╝рд╛рдЗрд▓ рдиреАрдЪреЗ рд╣реИ):

1. рдмреИрдЯ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ - рдХрдВрд╕реЛрд▓ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рд░рджреНрдж рдХрд░рдирд╛, рдЕрдВрддрд┐рдо рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рдирд╛:

@ рдЗрдХреЛ рдмрдВрдж

рд╕реАрдПрд▓рдПрд╕


2. pyinstaller рдХреЗ рд▓рд┐рдП рдкрде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдФрд░ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рд▓рд┐рдП рдкрде рдЬрд┐рд╕рдореЗрдВ рдХрд▓реНрдкрдирд╛ рдФрд░ exe рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:

pyinstPath = c : \ python26 \ pyinstaller рд╕реЗрдЯ рдХрд░реЗрдВ

buildPath = % pyinstPath % \ bin рд╕реЗрдЯ рдХрд░реЗрдВ


3. рд╕рдорд╛рдкреНрдд exe рдХреЗ рдЖрдВрджреЛрд▓рди рдХреА рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рдЪрд░ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕реЗрдЯ рдХрд░рдирд╛ рдФрд░ рдпрд╣ рдЬрд╛рдВрдЪрдирд╛ рдХрд┐ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ - рдЭрдВрдбреЗ):

рдЪрд╛рд▓ рдЪрд▓рди = реж

рдлрд╝рд╛рдЗрд▓рдкрд░рдо рд╕реЗрдЯ рдХрд░реЗрдВ = 0


4. рд╣рдо рджрд░реНрдЬ рдХрд┐рдП рдЧрдП рдорд╛рдкрджрдВрдбреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рджрд░реНрдЬ рдХреА рдЧрдИ рдХреБрдВрдЬреА (рддреАрд╕рд░реА рдкрдВрдХреНрддрд┐) рдХреЗ рд╕рд╛рде рд▓реЗрдмрд▓ рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рд▓реЗрдмрд▓ рдкрд░ рд▓реМрдЯрддреЗ рд╣реИрдВ: ParamChkред рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ рдЦрддреНрдо рд╣реЛ рдЧрдП рд╣реИрдВ, рддреЛ рдмрд╛рдЗрдирд░реА рдЕрд╕реЗрдВрдмрд▓реА рд▓реЗрдмрд▓ (2 рд╡реАрдВ рдкрдВрдХреНрддрд┐) рдкрд░ рдЬрд╛рдПрдВ:

: рдкрд░рдордЪ

рдЕрдЧрд░ "% 1%" == "" рдЧреЛрдЯреЛ рдмрд┐рдирдмрд┐рд▓реНрдб

рдЧреЛрдЯреЛ рдкреА % 1


5. рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдВрдЬреА / рдкреИрд░рд╛рдореАрдЯрд░ рдЦреБрдж рдХреЛ рд▓реЗрдмрд▓ рдХрд░рддрд╛ рд╣реИред рдЗрдирдкреБрдЯ рднрд┐рдиреНрдирддрд╛рдПрдВ рд╡рд┐рднрд┐рдиреНрди рд╣реИрдВ, рд╕рд╛рд░ рд╕рдорд╛рди рд╣реИ - рдпрджрд┐ рдРрд╕реА рдХреБрдВрдЬреА рдореМрдЬреВрдж рд╣реИ, рддреЛ рд╣рдо рдЖрд╡рд╢реНрдпрдХ рдЬреЛрдбрд╝рддреЛрдбрд╝ рдХрд░рддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛, рдЬрд┐рд╕ рдкрде рдХреЗ рд╕рд╛рде рдпреБрдХреНрддрд┐ рдлрд╝рд╛рдЗрд▓ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рдПрдЧреА, рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдорджрдж рдФрд░ рд╢рд┐рдлреНрдЯ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ 1 рдмрд╛рдИрдВ рдУрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░% 2 рдерд╛,% 1 рдмрди рдЧрдпрд╛, рдЖрджрд┐):

: рдкреАрдПрдл

: рдкреА / рдПрдл

: рдкреА / рдлрд╝рд╛рдЗрд▓

: рдкреА - рдлрд╝рд╛рдЗрд▓

рдпрджрд┐ рдирд╣реАрдВ "% 2" == "" (

pyFile = % 2 рд╕реЗрдЯ рдХрд░реЗрдВ

рдпрджрд┐ % рдлрд╝рд╛рдЗрд▓рдкреНрд░реЗрдо % рдирд╣реАрдВ == 1 рд╕реЗрдЯ рдлрд╝рд╛рдЗрд▓рдкрд░рдо = 1 рд╕реЗрдЯ рдХрд░реЗрдВ

)

рдкрд╛рд░реА рдФрд░ рдмрджрд▓рд╛рд╡ & рдЧреЛрдЯреЛ ParamChk



: рдкреА.рдУ.

: рдкреА / рдУ

: рдкреА / рдмрд╛рд╣рд░

: рдкреА - рдЖрдЙрдЯ

рдпрджрд┐ рдирд╣реАрдВ "% 2" == "" рдмрд┐рд▓реНрдб рдмрд┐рд▓реНрдбрдкрде = % 2

рдкрд╛рд░реА рдФрд░ рдмрджрд▓рд╛рд╡ & рдЧреЛрдЯреЛ ParamChk



: рдкреА.рдПрдо.

: рдкреА / рдПрдо

: рдкреА / рдЪрд╛рд▓

: рдкреА - рдЪрд╛рд▓

рдЪрд╛рд▓ рдЪрд▓рди = рез

рдкрд╛рд░реА рдФрд░ рдЧреЛрдЯреЛ рдкрд░рдореИрдХ



: рдкреАрдПрдЪ

: рдкреА / рдПрдЪ

: рдкреА / рдорджрдж

: рдкреА - рдорджрдж

рдЧреВрдВрдЬред

рдЗрдХреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ :% ~ n0 [/ F [рдкрде] рдлрд╝рд╛рдЗрд▓ рдирд╛рдо] [/ O dir] [/ M]

рдЧреВрдВрдЬред

рдЗрдХреЛ / рдПрдл, - рдПрдл, / рдлрд╛рдЗрд▓, - рдлрд╛рдЗрд▓ - рдкрд╛рде рд╕реЗ .py рдлрд╛рдЗрд▓

рдЗрдХреЛ / рдУ, - рдУ, / рдЖрдЙрдЯ, - рдЖрдЙрдЯ - рдЖрдЙрдЯрдкреБрдЯ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реАред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ - % buildPath %

рдЗрдХреЛ / рдПрдо, - рдПрдо, / рдореВрд╡, - рдореВрд╡ - рдореВрд╡ рдмрд╛рдЗрдирд░реА рдЯреВ .py рдлрд╛рдЗрд▓ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЛ рдореВрд╡ рдХрд░реЗрдВ

рдЧреЛрдЯреЛ : EOF


6. рд╕рднреА рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЬрд╛рдВрдЪрдиреЗ рдФрд░ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд▓реЗрдмрд▓ рдкрд░ рдЬрд╛рдПрдВ: рдмрд┐рдирдмрд┐рд▓реНрдб рдФрд░ рдпрд╣ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рд╣рдо рдПрдХ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛, рдорджрдж рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдФрд░ рдХрд╛рдо рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВ:

: рдмрд┐рдирдмрд┐рд▓реНрдб

рдЕрдЧрд░ % fileParam % == 0 рдЗрдХреЛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд╣реИ ред рдорджрдж рдФрд░ рдЧреЛрдЯреЛ рдХреЗ рд▓рд┐рдП / рдПрдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ : рдИрдУрдПрдл


7. рд╣рдо рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдирд┐рд░реНрд╡рд╛рд╕рди рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╣рдо pyinstaller рдореИрдиреБрдЕрд▓ рдореЗрдВ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд▓реЗрддреЗ рд╣реИрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдирд┐рдореНрди рдкреИрд░рд╛рдореАрдЯрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВ - рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЕрд╕реЗрдВрдмрд▓реА, рд╕рдорд╛рдкреНрдд рдПрдХреНрд╕рдИ рдХреЗ рд▓рд┐рдП UPX + рдлрд╝реЛрд▓реНрдбрд░ рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрдкреАрдбрд╝рди:

рд╕реЗрдЯрдкрд░реНрд╕рдкрд╛рдо = - рдПрдл - рдПрдХреНрд╕ - рдУ % рдмрд┐рд▓реНрдбрдкрд╛рде %


8. рдЖрдЧреЗ, рд╣рдо рдПрдХ рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдПрдХреНрд╕ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬреЛ рдореЗрдХрд╕реНрдкреАрдХ рдХреЗ рд▓рд┐рдП рд░рд╛рд╕реНрддреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдКрдкрд░ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкрд╣рд▓реЗ рдХреЗ рд▓рд┐рдП рдкреИрд░рд╛рдореАрдЯрд░ред рд╡рд╣рд╛рдБ рдПрдХ рднрдпрд╛рдирдХ рдмреИрд╕рд╛рдЦреА рд╣реИ - рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдореИрдВ рдмреИрдЪ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рдирд╣реАрдВ рд╣реВрдВ, рдореБрдЭреЗ рдХреЗрд╡рд▓ рдкрд╛рд╢ (2 рд╡реАрдВ рдкрдВрдХреНрддрд┐) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░рд╛рд╕реНрддреЗ рд╕реЗ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рддрдХ рдЗрд╕рдХрд╛ рдирд╛рдо рдЪреБрдирдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдорд┐рд▓рд╛:

"% pyinstPath% \ MakeSpec.py" % specParams % "% pyFile%"

%% i рдХреЗ рд▓рд┐рдП ( % pyFile % ) рдХрд░рддреЗ рд╣реИрдВ ( рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рд╕реЗрдЯ рдХрд░реЗрдВ = %% ~ рдиреА )

% pyinstPath % \ Build.py "% buildPath% \% fileName% .spec"ред


9. рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рд╕реНрд░реЛрдд рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдмрд╛рдЗрдирд░реА рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд┐рдВрджреБ 8 рд╕реЗ рдмреИрд╕рд╛рдЦреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдФрд░ рдлрд┐рд░ рдмрд╕ рдкреБрд╖реНрдЯрд┐ рдХреЗ рдмрд┐рдирд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░реЗрдВ:

рдЕрдЧрд░ % рдЪрд╛рд▓рди % == 1 (

%% i рдХреЗ рд▓рд┐рдП ( % pyFile % ) рдХрд░рдирд╛ ( рд╕реЗрдЯ рдЖрдЙрдЯ рдХрд░рдирд╛ = %% ~ pi )

рдЪрд╛рд▓ / y "% buildPath% \ dist \% fileName% .exe" % outDir %

)




рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рдмреИрдЯ рдлрд╝рд╛рдЗрд▓ рдпрд╣рд╛рдБ рд╣реИ ред

рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдЕрдкрдиреЗ рд╕реНрдерд╛рди рдХреЛ pyinstaller рдлрд╝реЛрд▓реНрдбрд░ рдФрд░ рдЖрд╡рд╢реНрдпрдХ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЪрд░рдгреЛрдВ 2 рдФрд░ 7 рдореЗрдВ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВред



рдЕрд╕реНрд╡реАрдХрд░рдг :

рд╡рд╣ рд╕рдм рд╣реИред рдореИрдВ рдпрд╣ рдиреЛрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдпрд╣рд╛рдВ рдФрд░ рдмреИрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рджреЛрдиреЛрдВ рд╣реА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ, рдореИрдВрдиреЗ рдХрдорд╛рдВрдб рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ред рдХрдВрд╕реЛрд▓ рдореЗрдВ рдПрдХ рдХрдорд╛рдВрдб рдкрд░ рдорджрдж рдХреЗ рд▓рд┐рдП, рдмрд╕ <рдХрдорд╛рдВрдб_рдирд╛рдо> / рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ? рдФрд░ рд╡реЗ рддреБрдорд╕реЗ рдЬреНрдпрд╛рджрд╛ рд▓рд┐рдЦреЗрдВрдЧреЗ рдЬрд┐рддрдирд╛ рдореИрдВ рдпрд╣рд╛рдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рдореБрдЭреЗ рдкрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдХреБрдЫ рдмреИрд╕рд╛рдЦрд┐рдпреЛрдВ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛ рдХреБрдЫ рдмрд┐рдВрджреБрдУрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ / рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЦреБрд╢реА рдХреЗ рд╕рд╛рде рд╕реБрдиреВрдВрдЧрд╛ред рдпрджрд┐ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд┐рд╖рдп рдкрд╛рдпрдерди рдмреНрд▓реЙрдЧ рдореЗрдВ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдХреБрдЫ рдЕрдиреНрдп рдореЗрдВ, рдХреГрдкрдпрд╛ рдмрддрд╛рдПрдВ рдХрд┐ рдХреМрди рд╕рд╛ рд╣реИред



All Articles