Տուն
Top.Mail.Ru Moscow
Ֆորում: «Գլխավոր»;
Ընթացիկ արխիվը `2004.12.12;
Բեռնել: [xml.tar.bz2];

Down

Գրել է բացառություն մշակող ... Գտնել նմանատիպ մասնաճյուղեր


TankMan ©   (2004-11-18 17:50) [0]

Կարող է որեւէ մեկը ինձ ասել, ընդհանրապես, ինչպես կարող է ձեռքի գործիչը լինել բացառապես բացառիկ իրավիճակի բացառիկ տեսակի մեջ, այլեւ ասել, թե որ գծում է այդ սխալի պատճառը, բայց առնվազն այն մոդուլում:



Игорь Шевченко ©   (2004-11-18 17:52) [1]

http://www.delphi-jedi.org

JCL միավոր JclDebug.pas



Defunct ©   (2004-11-18 18:38) [2]

Իգոր Շեւչենկո ©

Իգոր, ինչ եք մտածում այս մոտեցման մասին.

unit unit1; ... ընթացակարգ xxx; սկսեք Փորձեք <code> Բացառությամբ Բարձրացնել Exception.Create ("Error in Unit1- ում, ընթացակարգում" xxx "); // Դուք կարող եք ավելացնել դասի անունը եւ նույնականացումը բացառությամբ: վերջ վերջ

Եվ մեկ գլոբալ մշակող, OnException- ում



Суслик ©   (2004-11-18 18:43) [3]


> // Դուք նաեւ կարող եք ավելացնել դասի անունը եւ նույնականացումը բացառությամբ:

եւ դուք կարող եք նաեւ տեսնել գծի համարը, նայեք ներքեւի ձախ կողմում :)



vuk ©   (2004-11-18 18:46) [4]

(18.11.04 18: 38) [2]:
Եվ դուք չեք խրախուսում նման կարգավորողի յուրաքանչյուր ընթացակարգին ներդնել:
Բացի JCL- ն, ավելի շատ օգտակար տեղեկատվություն է տրամադրում: Stack trace տեսակը: Եվ առանց վերամշակման ամբողջ հայտը:



Defunct ©   (2004-11-18 19:05) [5]

> Եվ դուք չեք խրախուսում նման կարգավորողի յուրաքանչյուր ընթացակարգին:

Այո, ես իսկապես կարիք չունեմ: Դա պարզապես հետաքրքիր էր համարել որպես տարբերակ:



GuAV ©   (2004-11-18 19:51) [6]

2- ի վնասվածքը

IMHO- ն ավելի լավ է վերստեղծել բացառությունը, այլ օգտագործել արդեն ստեղծվածը:

փորձեք <code> բացառությամբ E: Բացառություն անել սկսեք E.Message: = Ֆորմատ ("Unit1 մոդուլի սխալ", xxx "" + sLineBreak + "Բացառության տիպը% s" + sLineBreak + "% s", [E.ClassName, E.Message]); Բարձրացրեք. վերջ վերջ



KSergey ©   (2004-11-19 07:36) [7]

Մարդիկ, ասեք ինձ, թե ինչպես JclDebug.pas- ը կապել քարտեզի ֆայլը exe-shnik- ին: Թվում է, թե ինչ կարող ես կարդալ, բայց ես չեմ հասկանում, թե ...



TankMan ©   (2004-11-19 08:08) [8]

>> Իգոր Շեւչենկոն
Շնորհակալություն օգնության համար, բայց հնարավոր է հստակեցնել (որը ճիշտ էր), ես ներբեռնել JCL Releases 1.93- ը կամ հնարավոր է գտնել այնտեղ առանձին մոդուլներ: Ինչու եմ ես հարցնում, «Բառեր» -ը շփոթում է ինձ (եւ ես ունեմ ինտերնետի meeeeelennye :(

Եվ փորձի հաշվին, բացառությամբ, որ բոլորն էլ վտանգավոր տեղերի մեծ քանակով են ավարտվում, վարձատրվում են կոդով, շատ հեշտ չէ կարդալ ... (...



Digitman ©   (2004-11-19 10:14) [9]


> TankMan © (18.11.04 17: 50)


imho, սա հիմար եւ ավելորդ գաղափար է

Եթե ​​դուք, օրինակ, ստացել եք բացառություն EListError դասի, ապա դա պետք է անմիջապես հանգեցնի այն գաղափարի, որ բացառությունը տեղի է ունեցել այն գծերից մեկում, որտեղ բացահայտվում է կամ անուղղակի հղումը TList դասի օբյեկտի վրա: Այժմ դուք կասեք `կարող եմ ասել, որ կան նման միլիոնավոր տողեր: Իմ պատասխանն այն է, որ ձեր ծրագիրը վատ գրված է, դա վատ կառուցված է, տրամաբանությունը վատ կենտրոնացված է ... եւ գծի համարի սահմանման հետ որեւէ հնարք չի օգնի ձեզ `հետագայում գնալով, այնքան ավելի շուտ կխփեք ձեր կոդով, առանց հասկանալու, թե որտեղ եւ ինչ է տեղի ունենում



Игорь Шевченко ©   (2004-11-19 11:14) [10]

TankMan © (19.11.04 08: 08) [8]

Ներբեռնեք բոլոր Jcl- օգտակար:

KSergey © (19.11.04 07: 36) [7]

Եվ որտեղ դուք կարդացել եք գրված չէ: Ինձ տվեք մի հղում, ինձ էլ հետաքրքրում է

Digitman © (19.11.04 10: 14) [9]

Oops. Իսկ VCL- ում հազվագյուտ բացառություններ:



KSergey ©   (2004-11-19 11:53) [11]

> [10] Իգոր Շեւչենկո © (19.11.04 11: 14)
> KSergey © (19.11.04 07: 36) [7]
> Իսկ որտեղ եք կարդացել, դա գրված չէ: Ինձ էլ հղում տվեք
> հետաքրքիր

Ես ոչինչ չեմ հիշում, դա վաղուց էր: Ամենայն հավանականությամբ դա շփոթեցնող է:



TankMan ©   (2004-11-19 13:28) [12]

>> Digitman
Դե, օրինակ, EListError ես անպայման չէ :)
Սա չէ, փաստ է, որ ես շատ ցիկլեր ունեմ եւ տարբեր տվյալների կառուցվածքների շատ մշակման մեջ, ծրագիրը փոքր չէ, երբ ծրագիրը բեռնաթափում է պարամետրերը կոնֆիգուրացիոն ֆայլից դինամիկ կերպով ստեղծված տողերի շղթայական դասարանների համար, իսկ ավելի ուշ, կան շատ բաներ հիշողության մեջ դա արվում է նրանց հետ, եւ եթե EConvertError- ի կամ EAccessViolation- ի վիճակը ծագում է, ես չեմ կարող ասել / առաջարկել նույնիսկ այն դեպքը, երբ տեղի է ունեցել սխալը եւ ինչ գործողություններ, քանի որ մի դեպքի վրա շատ տվյալների գործառնություններ են տեղի ունենում, ինչը թույլ չի տալիս առնվազն օրինակ բայց պատմել սխալների տեսքով, որտեղ այն առաջացել է եւ «շնորհիվ» ինչ ... Ես գրել եմ նոթատետր ...

>> Իգոր Շեւչենկոն
Շնորհակալություն ...



Digitman ©   (2004-11-19 13:33) [13]


> Իգոր Շեւչենկո © (19.11.04 11: 14) [10]


> որքանով է նույնական բացառությունները VCL- ում:


եւ քանիսն են մինչեւ իրենց իրան ...
դժոխային ալգորիթմը միշտ առաջացնում է հեմոռոյ


> EAccessViolation Ես չեմ կարող ասել, թե նույնիսկ որտեղ
> սխալի պատճառով


կարիք չկա լա լա:

հենց հենց այս բացառումը, որը տալիս է ամբողջական տեղեկատվություն այն գծի մասին, որտեղ դուք ստեղծեց անհեթեթություն



TankMan ©   (2004-11-19 13:56) [14]

Ինչու ես հիմա հարցնում:



Digitman ©   (2004-11-19 14:01) [15]


> TankMan © (19.11.04 13: 56) [14]
> Ինչու եմ հարցնում:


եւ ինչպես ես գիտեմ, թե ինչու եք հարցնում:

դուք ուզում եք ինչ - որ «համընդհանուր» խնդրի լուծման հարցում ... բայց նման բան չկա եւ չի կարող լինել:

բայց կոնկրետ EAccessViolation- ի մասին, դուք, հավանաբար, այս բացառության մասին հաղորդագրության մեջ ավելի քան մեկ անգամ տեսել եք «XXXXXXXX հասցեում» բառը,

այնպես որ այս տեղեկատվությունը XXXXXXXXX- ը տրվում է ձեզ միայն տեղայնացնել այն գիծը, որտեղ բացառություն է այս դասի տեղի ունեցածը եւ չկորցնել անիվը "



TankMan ©   (2004-11-19 14:12) [16]

... փաստը այն է, որ ես չգիտեմ, թե ինչպես պետք է նայենք այս XXXXXX- ին եւ որի կողմից: (
Գուցե դուք պետք է թեքեք ձեր գլուխը եւ նայեք նրանց, ինչպես, օրինակ,
> <
> <
> <
> <
> <
> <
Ես ուզում եմ ասել, բայց չկարողացա բացահայտել «գաղտնիքը», ես կարծում էի, որ սա հիշատակի հասցե է, որի համար տեղի է ունեցել սխալ, եւ ոչ թե աղբյուրի տեքստի հասցեն կամ նման բան ...



Digitman ©   (2004-11-19 14:34) [17]


> TankMan © (19.11.04 14: 12) [16]


Որոնել մենյու -> Գտնել սխալ ...
Բոլոր մանրամասները `ստանդարտում:



KSergey ©   (2004-11-19 14:45) [18]

> [17] Digitman © (19.11.04 14: 34)
> Որոնել մենյու -> Գտնել սխալ
> բոլոր մանրամասները `std.spravka- ում:

Ահա, պատվիրատուի մոտ) եւ սովորեցրեց ինձ, որ նման մենյու ստեղծեք ձեր ծրագրում, pliz ...
Միայն առանց jedi եւ քարտեզի ֆայլեր: Նրանց հետ, պարզ է, թե քիչ թե շատ:



Digitman ©   (2004-11-19 14:49) [19]


> KSergey © (19.11.04 14: 45) [18]


սովորեցրեք ինձ նման ծրագիր կառուցել ձեր ծրագրում:


չի հասկանում ... ինչն է "է»:



vuk ©   (2004-11-19 14:56) [20]

դեպի Digitman © (19.11.04 14: 34) [17]:
> Որոնել մենյու -> Գտնել սխալ
Եվ ինչպես է դա: Լավ գտնել: Դա շատ բան է օգնում: Ազնիվ.
Եվ հետո, դա հասկանալի կլինի, երբ այն շատ անհրաժեշտ էր, անկախ նրանից, թե որքան եմ փորձել, ոչ մի թուզ չի հայտնաբերվել: Ի տարբերություն JCLDebug- ի, որը կարողացավ անմիջապես տեղայնացնել սխալը, քանի որ կա նաեւ բծախնդրություն:



KSergey ©   (2004-11-19 15:01) [21]

> [19] Digitman © (19.11.04 14: 49)
> Ես չէի հասկանում ... ինչ է «նման»:

Մի ձեւացրեք գուլպաներ.)
Նշված գրքում նշվում է [18] համարը:

Ես կցանկանայի ներդնել Իմ որոնում `> Find Error menu item in my program (պարզապես չունենալ« լավ եւ ներդնել », այլեւս լուրջ չի լինի): Սա, իհարկե, վերաբերում է ինչպես ներդնել ֆունկցիոնալությունը այս տարրը IDE- ն: Կրկին ուզում եմ առանց jedi- ի եւ քարտեզ-ֆայլերի օգտագործումը: Նրանց հետ, եւ բոլորն էլ գիտեն,)



Digitman ©   (2004-11-19 15:14) [22]


> vuk © (19.11.04 14: 56) [20]


> ինչպես է դա: Լավ գտնել: Դա շատ բան է օգնում: Ազնիվ


օգնում է ինձ
եւ հաճախ բավականաչափ:
եթե ոչ, միշտ, երբ այս գործիքը կիրառելի է տվյալ իրավիճակում:


> KSergey © (19.11.04 15: 01) [21]


> Ոչ պակաս անհրաժեշտ է ձեւացնել գուլպաներ


> Ցանկանում եմ տեղադրել իմ որոնման ցանկի տարրը իմ ծրագրում
> -> Գտնել սխալ


մի արգելեք այգին:
Այս գործիքը անհրաժեշտ է միայն մշակողի մեքենայի վրա, հաճախորդի մեքենայի վրա, դա անհրաժեշտ չէ:
Հաճախորդի համար աշխատող Ձեր ծրագրի խնդիրն այն է, որ այս ուղերձը ձեզ որպես ծրագրավորող փոխանցի ձեզ, եւ դուք, որպես ձեր սեփական մեքենայի մշակողը, տեղայնացրեք ընթացիկ հաճախորդի տարբերակին համապատասխան կոդով տողը, կկիրառեք իրավիճակը եւ խնդրի լուծում:



KSergey ©   (2004-11-19 15:19) [23]

> [22] Digitman © (19.11.04 15: 14)
> որպես ծրագրավորող `այս հասցեին փոխանցելու համար
> եւ դուք որպես մշակող ձեր սեփական մեքենայի տեղայնացնել գիծը աղբյուրի մեջ

Հմմ, ես պետք է փորձեմ: Շնորհակալություն:



vuk ©   (2004-11-19 15:20) [24]

դեպի KSergey © (19.11.04 15: 01) [21]:
Խոսելով թռչունների մասին: Որպեսզի JCLDebug- ը թողարկի հետագիծ թողարկի, անհրաժեշտ չէ: Սկզբունքորեն հնարավոր է ախտորոշում ստանալ հաճախորդից `հետք ունենալով (հասկանալի է, ծրագրային ապահովումը պետք է այս գործը թողնի նմանատիպ ձեւով, որը թույլ է տալիս ուղարկել սխալի մասին զեկույց), եւ միայն այնուհետեւ կատարեք ճառագայթման decreep.



KSergey ©   (2004-11-19 15:44) [25]

> [24] vuk © (19.11.04 15: 20)
Որպեսզի JCLDebug- ը թողարկի հետագիծ թողարկի, անհրաժեշտ չէ

Սա այո, սա, իհարկե, ...
Բայց, ի դեպ, որտեղ է այս հասցեն (առնվազն վերջինը): Մի բան չեմ կտրում ...



Игорь Шевченко ©   (2004-11-19 16:43) [26]

KSergey © (19.11.04 15: 44) [25]

Բացառությամբ Addr?



KSergey ©   (2004-11-19 16:48) [27]

> [26] Իգոր Շեւչենկո © (19.11.04 16: 43)
Բացառությամբ Addr- ը:

Շնորհակալություն



TankMan ©   (2004-11-22 07:39) [28]

>> Digitman © (19.11.04 15: 14) [22]
> Դուք, որպես ծրագրավորող, տեղայնացրեք ընթացիկ հաճախորդի տարբերակին համապատասխան կոդով տողը, կկիրառեք իրավիճակը եւ խնդրի լուծում գտնեք:
... ցավում է հիմար հարցի համար, բայց ... եւ ինչպես դա անել: Կարող եմ դա բացատրել իմ մատների վրա, օրինակով: Եվ հետո ես չեմ հանդիպել: (



Digitman ©   (2004-11-22 08:17) [29]


> TankMan © (22.11.04 07: 39) [28]


> ինչպես դա անել:


ինչ անել: գտնել գիծ:

համար AV - [17]
բոլորի համար - [26]



TankMan ©   (2004-11-23 19:40) [30]

>> Digitman © (22.11.04 08: 17) [29]
Ահ, լավ ... շնորհակալություն օգնության համար, ես գրում եմ Դելփիին եւ չգիտեի `(... հոսքը կապված էր սա :(, շնորհակալություն:



TankMan ©   (2004-11-25 13:36) [31]

>> Digitman
Բայց ոչ, ես չէի հասկանում :(, փաստը այն է, որ սխալի տեղի է ունենում ծրագրի որոշակի վայրում, եւ ոչ թե առաջին անգամ. (
Սակայն, ընդհանուր առմամբ, հնարավոր է իրականացնել այդպիսի մշակողը, որը, երբ արդեն կազմված exe- ում սխալ տեղի ունեցավ, տիպի հաղորդագրություն ուղարկեց (թարգմանվել է ռուսերեն);) «1 մոդուլի 25 տողում մուտքի սխալ առաջացավ» ... Եթե ​​իմ հիշողությունը ծառայում է ինձ, ես տեսել եմ այս տեսակի ուղերձը մի քանի խաղալիքների մեջ, եթե սխալ կա ... կամ դա դելֆինի հետ սխալ է:



KSergey ©   (2004-11-25 14:29) [32]

> [31] TankMan © (25.11.04 13: 36)
> "1 մոդուլի տողում 25- ում մուտքի սխալ առաջացավ

Այս մասին գրում է առաջինը: Իսկապես անհնար է նայել:



Digitman ©   (2004-11-25 15:03) [33]


> TankMan © (25.11.04 13: 36) [31]


Տեսնում եք, ամեն ինչ չէ, որ պարզ է ...

Բացառություն կարող է առաջանալ ձեր կողմից բեռնված համակարգի կոդը, օրինակ, user32.dll

դուք հասկանում եք, որ դուք չունեք որեւէ «միավորներ» եւ «գծի համարներ» սպասել, բայց իրավիճակը, այնուամենայնիվ, ունի կյանքի իրավունք ..., օրինակ, այն պատճառով, որ ինչ-որ տեղ իր ստորաբաժանումի կոդի մեջ ապա դուք տվել եք այն մի տող, երբ դուք բացահայտ կամ անուղղակիորեն կոչվում եք system.module API- ը, որը սխալ փաստ է տվել: Պարամետր ... բացառություն այն է, որ այն ցույց է տալիս, թե ինչ է կատարվել AV- ում եւ վերաբերում է ձեր գործընթացի AP- ի պատկերին վերաբերող հասցեին: այլ ոչ թե ձեր սեփական Պասկալի գիծի հասցեն, որը անցել է «կորի» պարամետրը, ինչը հանգեցրեց աղետի ...



TankMan ©   (2004-11-25 19:26) [34]

>> KSergey
Բայց ոչ մի դեպքում, ես հավաքել եմ, շատ հազվադեպ, եւ ոչ թե երկար ժամանակ, այնպես որ այս 6mbs- ը կախված է ինձ համար :(

>> Digitman
եւ դա ափսոսանք է ... Ես ներբեռնելու JCL Releases այսօր եւ փորձեք, ես նայում եմ զով շարք%)



Էջեր: 1 ամբողջ ճյուղը

Ֆորում: «Գլխավոր»;
Ընթացիկ արխիվը `2004.12.12;
Բեռնել: [xml.tar.bz2];

Up









Հիշողություն `0.7 ՄԲ
Ժամանակը `0.085 գ
1-1101815168
տիտուս
2004-11-30 14:46
2004.12.12
MapViewOfFile


3-1100407007
Սեվ
2004-11-14 07:36
2004.12.12
ADOConnection- ի գույքը փոխելու փորձ կատարելու սխալ


8-1094823919
կարգաբերող
2004-09-10 17:45
2004.12.12
Կոնտրաստ եւ պայծառություն:


4-1098854619
տղամարդկանց
2004-10-27 09:23
2004.12.12
Ակտիվ հարդարանք


14-1101232184
Յանիս
2004-11-23 20:49
2004.12.12
Օդեժա





afrikaans ալբանական արաբական հայերեն ադրբեջանական Բասկերի Բելառուսի Բուլղարիայի catalan Չինարեն (պարզեցված) Չինարեն (ավանդական) Խորվաթիայի չեխ դանիերեն հոլանդական Անգլերեն
Էստոնիայի filipino ֆիններեն ֆրանսերեն
galician վրացական գերմանական հունարեն haitian Creole եբրայերեն հինդի հունգարերեն icelandic հայերեն իռլանդական իտալական ճապոնացի Կորեայի Լատվիայի Լիտվայի մակեդոներեն Մալայերեն մալթերեն նորվեգական
պարսկական Լեհաստանի պորտուգալացի ռումինական ռուսական սերբերեն Սլովակիայի Սլովենիայի իսպաներեն սուահիլի շվեդերեն թայերեն թուրքական ուկրաինական ուրդու վիետնամերեն ուելսերեն հայերեն bengali բոսնիերեն
Cebuano Esperanto գուջարաթի հաուսա Hmong Igbo ճավաերեն kannada Khmer Lao լատիներեն մաորի մարաթի մոնղոլական նեպալերեն Punjabi Somali tamil telugu յորուբա
զուլուսերեն
Անգլերեն Французский Немецкий Итальянский Португальский Русский Испанский