Fejlfinding i forbindelse med reverse engineering af Microsoft Visual C++ 6.0

Under reverse engineering oprettes der en logfil, der opstiller de fundne fejl. Filen skrives til <temp_dir>\<projektnavn>.txt (f.eks. c:\temp\projekt.txt). De fleste af og i nogle tilfælde alle de fejl, der opstår, findes i klasser, der bruger C++-skabeloner. (Gennemsynsfilens API har flere kendte fejl, der påvirker muligheden for at håndtere C++-skabeloner.)

Kodefunktioner, som Visio UML-tilføjelsesprogrammet ikke foretager reverse engineering af

  • Attributtyper

  • Metodereturneringstyper

  • Parameterstandardværdier

  • Navneområder  Hvis en klasse A defineres i en navneområde, bliver der foretaget reverse engineering af klassen, men det faktum, at den var del af et navneområde, bliver der ikke foretaget reverse engineering af.

  • Flere C++-nøgleord, herunder inline, friend og volatile.

  • Abstrakte klasser og metoder  Disse identificeres ikke som sådanne i den model, der er foretaget reverse engineering af.

  • Skabelondefinitioner  Der foretages reverse engineering af instanser af skabelonklasser, men kun som standardklasser, ikke som parameterklasser.

Kodefunktioner, som Visio UML-tilføjelsesprogrammet nogle gange foretager reverse engineering af

  • Metodeparametre Der foretages ikke altid reverse engineering af lange parameterlister på grund af en fejl i gennemsynsfilens API.

  • Metodeparameternavne  Parameternavne hentes fra metodedefinitioner, der opstår uden for klassedefinitionen. Hvis en metode defineres i en klassedefinition, kan korrekte parameternavne ikke hentes. Navne genereres automatisk i disse tilfælde.

Kodefunktioner, som Visio UML-tilføjelsesprogrammet nogle gange foretager forkert reverse engineering af

  • Klasser og klassemetoder  Klassenavne og klassemetodenavne ødelægges ind imellem på grund af en fejl i gennemsynsfilens API. Hvis der findes et ødelagt navn under reverse engineering, føjes elementet ikke til UML-modellen. Dette problem opstår i klasser, der er afledt fra C++-skabeloner. Ind imellem opdages det ødelagte navn ikke, og det ødelagte navn føjes til UML-modellen.

Del Facebook Facebook Twitter Twitter Mail Mail

Var disse oplysninger nyttige?

Fantastisk! Har du mere feedback?

Hvordan kan vi forbedre det?

Tak for din feedback!

×