VBA (Visual Basic հավելվածների համար) ծածկագիրը պաշտպանելու 4 եղանակ
VBA կոդը, որը դուք գրում եք, ձեր աղյուսակի սիրտն ու հոգին է: VBA կոդը պաշտպանելը մի բան է, որը պետք է արվի՝ համոզվելու համար, որ ձեր կոդը չգողացվի կամ չօգտագործվի առանց ձեր իմացության: Այս գրառումը կներառի ձեր VBA կոդը պաշտպանելու մի քանի տարբեր եղանակներ, որպեսզի միայն ԴՈՒՔ կարողանաք հեշտությամբ մուտք գործել այն:
Ինչու՞ պետք է հոգ տանել VBA ծածկագրի պաշտպանության մասին:
VBA-ն մակրո լեզու է, որը կարող է օգտագործվել Excel, Word, PowerPoint-ում ավտոմատացված առաջադրանքներ կամ գործողություններ ստեղծելու համար: Կան մի քանի պատճառ, որ դուք պետք է պաշտպանեք ձեր VBA կոդը.
- Ձեր VBA կոդը պատահական փոփոխությունից պաշտպանելու համար: VBA կոդը հզոր գործիք է Excel-ի օգտատերերի համար, սակայն այն կարող է նաև հիասթափության աղբյուր լինել նրանց համար, ովքեր չեն օգտագործում այն: Եթե դուք չեք ապահովում VBA-ն գաղտնաբառով, ապա ձեր աշխատանքային գրքույկից օգտվող մյուսները կարող են մուտք գործել կոդը և փոփոխություններ կատարել դրանում՝ չիմանալով, թե իրականում ինչ են անում: Դուք չեք ցանկանում վրիպազերծել ձեր VBA կոդը, քանի որ այն կարող է ցավոտ լինել. կարող է ժամեր պահանջվել՝ պարզելու համար, թե ինչու, իսկ հետո ավելի շատ ժամանակ:
- Ձեր մտավոր սեփականությունը պաշտպանելու համար: VBA կոդը կարող է շատ արժեքավոր լինել որոշ ընկերությունների համար: Եթե մեկ ուրիշը մուտք գործի ձեր աղյուսակը և պատճենի ձեր օգտագործած ֆունկցիոնալությունը, ապա նա կարող է այն փոխանցել որպես սեփական աշխատանք և վաճառել այն բազմաթիվ ընկերությունների: Պաշտպանեք ձեր արժեքավոր աղբյուրի կոդը անվտանգության միջոցներով: Ոչ մեկի համար հեշտ մի դարձրեք գողանալը կամ պատճենելը:
- Պաշտպանվելու համար այն մարդկանցից, ովքեր օգտագործում են ձեր աշխատանքը: Եթե դուք ունեք VBA կոդի արժեքավոր կտոր, որը հեշտացնում է ձեր աշխատանքը կամ ավելի արդյունավետ, ապա դուք կարող եք պաշտպանել այն միայն անձնական օգտագործման համար:
Կարևոր է նշել, որ ձեր VBA կոդը պաշտպանելու մի քանի տարբեր եղանակներ կան, բայց ոչ բոլորն են պաշտպանում ձեր կոդը նույն ձևով: Դա կախված է ձեզանից և ձեր կարծիքով լավագույնը ձեր կարիքների համար:
#1 գաղտնաբառով Պաշտպանեք VBA կոդը Excel-ում VBAProject գործիքի միջոցով
Այս հատվածը բացատրում է, թե ինչպես կարող եք օգտագործել VBA նախագծի պաշտպանության կարգավորումները՝ պաշտպանելու ձեր VBA ծածկագիրը հետաքրքրասեր աչքերից և ինչ-որ մակարդակի վրա ձեռքերը կեղծելու համար:
- Անվտանգության մակարդակ՝ թույլ; Կան գործիքներ, ինչպիսիք են VBA գաղտնաբառի հեռացում որը կարող է օգտագործվել գաղտնաբառի ապակողպման համար րոպեների ընթացքում;
- Դժվարություն. Հեշտ;
- Արժեքը՝ անվճար;
Քայլ 1. Excel-ի «Developer» ցանկից ընտրեք «Visual Basic»:
Քայլ 2. Ձեր VBA նախագիծը փակելու համար սեղմեք «Գործիքներ» բարում և ընտրեք «VBAProject Properties»:
Այս ընտրացանկի տարրը սեղմելուց հետո դուք պետք է տեսնեք հետևյալ երկխոսության տուփը.
«Ընդհանուր» ներդիրը ընտրված է լռելյայնորեն, բայց կտտացրեք «Պաշտպանություն» ներդիրին:
Քայլ 3. Ստուգեք «Կողպեք նախագիծը դիտելու համար» և այնուհետև երկու անգամ մուտքագրեք ձեր գաղտնաբառը այս երկու տուփերում և սեղմեք «OK»:
Քայլ 4. Պահպանեք այն և նորից բացեք Excel ֆայլը: Դուք կկարողանաք պարզել, թե արդյոք VBA գաղտնաբառով պաշտպանությունը ճիշտ է միացված՝ կրկնակի սեղմելով ձեր VBA նախագիծը: Երբ դուք պաշտպանում եք ձեր VBA նախագիծը գաղտնաբառով, դա կկանխի որևէ մեկին պատահաբար փոփոխելը:
#2 Օգտագործեք VBA Obfuscation՝ ձեր մակրո կոդը պաշտպանելու համար
VBA մշուշումը ձեր VBA կոդը անընթեռնելի, բայց դեռ գործունակ դարձնելու արվեստն է: Այն փոփոխում է ձեր գոյություն ունեցող մակրոները մի քանի մակարդակների խճճվածությամբ, ինչը դժվարացնում է հիմքում ընկած տրամաբանությունը հասկանալը: Ընդլայնված VBA խցանման սարքերը օգտագործում են մի շարք առաջադեմ մշուշման տեխնիկա, ինչը զգալիորեն ավելի դժվար է դարձնում հակադարձ հետագծումը և վերականգնումը:
- Անվտանգության մակարդակ՝ միջին; Ինչ-որ մեկը դեռ կկարողանա ժամանակ հատկացնել և բավականաչափ ռեսուրսներ ծախսել կոդը վերականգնելու համար.
- Բարդություն՝ չափավոր; Կախված մակարդակից;
- Արժեքը: Անվճար VBA Obfuscator /Պրեմիում;
Դուք կարող եք օգտագործել VBA մթնեցումը թիվ 1 տեխնիկայի հետ զուգահեռ, որը նախ պետք է մթագնի, ապա ապահովի մոդուլը գաղտնաբառով: Խնդրում ենք նկատի ունենալ, որ խճճվածությունն անշրջելի է, ուստի շարունակելուց առաջ ստեղծեք աղբյուրի ֆայլի կրկնօրինակում: Նաև հիշեք, որ խճճված կոդը չի կարող երաշխավորված լինել առանց անսարքությունների: Խնդրում ենք մանրակրկիտ փորձարկել այն նախքան թողարկելը: Օգտագործեք նախագծի մեկ մաս՝ խավարելու համար: Այն բանից հետո, երբ առաջին մոդուլի խճճման թեստը հաջողված է, անցեք երկրորդին:
#3 Փոխարկել VBA կոդը դինամիկ-հղումով գրադարանի (DLL)
Կոմպիլյատորները, ինչպիսիք են Visual C++-ը և Visual Basic-ը, արտադրում են հավելվածներ, որոնք դժվար է կոտրել: Դա պայմանավորված է նրանով, որ կոդը կազմվում է գործարկվող ֆայլերի կամ դինամիկ հղումների գրադարանի ֆայլերի մեջ։ Այսպիսով, մենք կարող ենք նաև VBA կոդը կազմել դինամիկ հղումների գրադարանի ֆայլի մեջ, այնուհետև օգտագործել այն Excel-ում:
- Անվտանգության մակարդակ՝ բարձր;
- Բարդություն՝ չափավոր;
- Արժեքը՝ անվճար;
Պաշտպանության այս մեթոդը խիստ խորհուրդ է տրվում, բայց դա 100% երաշխավորված չէ: Կազմել սովորելու համար տե՛ս VbaCompiler.com-ի հրահանգները. 10 քայլ VBA կոդը բնօրինակ Windows DLL-ում հավաքելու համար .
#4 Փոխարկել VBA-ն C կամ C++-ի
Ձեր մակրոները C կամ C++-ի թարգմանելը ավելի դժվար է հակադարձ ինժեներական դարձնելը, քան VBA-ն: Եթե ցանկանում եք պաշտպանել ձեր կոդը, սա լավագույն միջոցն է:
- Անվտանգության մակարդակ՝ ամենաբարձր; Գրեթե անհնար է ստանալ կոդը առանց իրավունքների. Բայց կրկին, դա 100% երաշխավորված չէ.
- Բարդություն. Բարդ և ժամանակատար; Քանի որ VBA-ն և C/C++-ը այդքան տարբեր լեզուներ են, դա ավելի դժվար է, քանի որ դուք պետք է շատ ջանք ներդնեք:
Եզրակացություն
Մակրոների օգտագործումը հիանալի միջոց է առաջադեմ գործառույթների զարգացումը հեշտացնելու համար: Ցավոք, սա ձեր կոդը գողանալու կամ այլոց կողմից պատճենելու վտանգի տակ է դնում: Հոդվածում քննարկվում են այն մեթոդները, որոնք կարող եք օգտագործել՝ կանխելու այլ օգտատերերի՝ ձեր VBA կոդը գողանալը կամ կեղծելը: Խնդրում ենք նկատի ունենալ, որ VBA կոդերի պաշտպանությունը փամփուշտ պաշտպանություն չէ, բայց այն ապահովում է որոշակի պաշտպանություն պատահական հարձակվողներից: