Autor Téma: Obsidium - chyba pri ochrane súboru. Uplatniť návod  (Přečteno 442 krát)

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 5924
  • Karma: 43
    • Verze Delphi: W10 + D11

Je problém pri ochrane exe. Ja to podľa návodu neviem uplatniť v Delphi. Príklad je pre Visual Studio
  • Chýba mi adresa aplikácie
  • Ako sa dostanem k oknám, čo sú v návode?
ERROR: Nested encryption mark at RVA 0x0119F321
Affected source line: frxExportXLS.pas#1491
Error writing/creating protection code
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Offline Slappy

  • Plnoletý
  • ***
  • Příspěvků: 249
  • Karma: 12
  • Slappy
    • Verze Delphi: 11 Alexandria + Vsetky :)
    • unSigned
Re:Obsidium - chyba pri ochrane súboru. Uplatniť návod
« Odpověď #1 kdy: 09-07-2021, 19:11:21 »
Okna su z Visual Studia 2008, ked je nacitana nejaka aplikacia - napr. pri debugovani alebo z crash dumpu.

Ta adresa 0x4000000 je tzv Base address a je vzdy (vacsinou) rovnaka, vid https://docs.microsoft.com/en-us/previous-versions/ms809762(v=msdn.10)?redirectedfrom=MSDN

Co sa snazis dosiahnut?
Moje projekty: http://www.unsigned.sk Tvorba cool dizajnovych instalatorov v NSIS a Inno Setup. Rozsirenie pre Visual Studio a RAD Studio pre tvorbu NSIS a Inno Setup instalatorov.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 5924
  • Karma: 43
    • Verze Delphi: W10 + D11
Re:Obsidium - chyba pri ochrane súboru. Uplatniť návod
« Odpověď #2 kdy: 09-07-2021, 20:38:14 »
Pri vytváraní ochrany súboru exe to padne. To sa deje v ich aplikácii. Nezávisle na Delphi. A ja chcem nájsť to kritické miesto vo svojej aplikácii. S frxExportXLS.pas to nemá vôbec nič spoločné. Často používam
Kód: [Vybrat]
  {$I OBSIDIUM_ENC_START}...{$I OBSIDIUM_ENC_END}a v tom je problém. Odhadujem to na 400 výskytov. V niektorých funkciách tieto direktívy jednoducho nemôžu byť. Lebo obsidium má ihneď problém. Nezistili prečo. Neprichádza do úvahy aby som postupne všetko prechádzal. Dostal som aj taký návrh ;D
Niektoré okná z návodu sa mi zobrazia len pri ladení. Majú problém sami so sebou. V apríli som s nimi už podobný stav riešil. Chybu sme našli tak, že som mu poslal nechránené exe a on mi napísal kde to je. Potom som už len skúšal ktorá vec to spôsobuje. Tých problémov bolo viac.
https://www.obsidium.de/board/viewtopic.php?f=3&t=419
Neviem či to nie je len pre registrovaných.
A 64b ani nemôžem exe skompilovať, lebo to padne na ich súbore inc. Na podporu som napísal. Ešte sa neozvali. Trochu im to trvá, ale potom to už ide. Ale keďže poznám scenár.. :( .

W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 3280
  • Karma: 139
    • Verze Delphi: D2007, XE3, DX10
Re:Obsidium - chyba pri ochrane súboru. Uplatniť návod
« Odpověď #3 kdy: 10-07-2021, 06:27:09 »
Neprichádza do úvahy aby som postupne všetko prechádzal. Dostal som aj taký návrh ;D
Na podobne veci se pouziva "vazeni" pulenim intervalu: zakomentujes pulku a zkusis. Pak pulku z inkriminovane pulky etc. takze ti bude staci ln(400)

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 5924
  • Karma: 43
    • Verze Delphi: W10 + D11
Re:Obsidium - chyba pri ochrane súboru. Uplatniť návod
« Odpověď #4 kdy: 10-07-2021, 11:10:53 »
Pri všetkej úcte, to nemôžeš myslieť vážne :o  Veď to mám porozhadzované zhruba v 200 súboroch ::)  To už je veľa aj na mňa >:(  Ktovie na koľkých miestach to robí problém?
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 3280
  • Karma: 139
    • Verze Delphi: D2007, XE3, DX10
Re:Obsidium - chyba pri ochrane súboru. Uplatniť návod
« Odpověď #5 kdy: 10-07-2021, 11:37:22 »
Pri všetkej úcte, to nemôžeš myslieť vážne :o  Veď to mám porozhadzované zhruba v 200 súboroch ::)  To už je veľa aj na mňa >:(  Ktovie na koľkých miestach to robí problém?
To si opravdu nedokazes poradit?

Je nejaky problem pulku souboru presunout do nejakeho adresare bez ohledu na to, kolik direktiv obsahuji, pak pomoci Replace pres soubory tu direktivu zakomentovat, vratit soubory, prelozit, spustit, vyselektovat upravenou polovinu a postup zopakovat nad polovinou, ktera chybu vykazuje etc... Nebude to presne dvojkovy logaritmus, ale dost se tomu bude blizit.

A kdyby to rozdeleni v souborech bylo silne asymetricke, tak pri tom rozdelovani muzes pouzit Find pres soubory a pulky v par iteracich upravit.
Trocha prace s tim bude, ale do 10 testu to musis najit, navic od toho mame batche, aby si clovek usetril rucni praci.

V nejhorsim se ti muze stat, ze tech problematickych mist bude nekolik, takze to bude pracnejsi.


Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 5924
  • Karma: 43
    • Verze Delphi: W10 + D11
Re:Obsidium - chyba pri ochrane súboru. Uplatniť návod
« Odpověď #6 kdy: 10-07-2021, 12:19:05 »
Takýto spôsob mi nenapadol :)  Stále sa mám čo učiť ;)
Počkám si na reakciu z podpory a potom uvidím.
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 5924
  • Karma: 43
    • Verze Delphi: W10 + D11
Re:Obsidium - chyba pri ochrane súboru. Uplatniť návod
« Odpověď #7 kdy: 13-07-2021, 18:19:03 »

Nakoniec som dostal odpoveď:
.
The same approach is possible with Delphi. Start and pause your program in the IDE (e.g. through 'Run / Step Over'), then open 'View / Debug Windows / CPU Windows / Entire CPU'. Hit CTRL-G to jump to an address.
Preklad:
Rovnaký prístup je možný aj v prípade Delphi. Spustite a pozastavte svoj program v IDE (napr. Prostredníctvom príkazu „Spustiť / Prekročiť“), potom otvorte program „Zobraziť / Debugovať Windows / CPU Windows / Celý procesor“. Stlačením klávesov CTRL-G preskočíte na adresu.
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 3280
  • Karma: 139
    • Verze Delphi: D2007, XE3, DX10
Re:Obsidium - chyba pri ochrane súboru. Uplatniť návod
« Odpověď #8 kdy: 14-07-2021, 08:37:55 »
No to ti to napsalo hned, na to ses nemusel ptat :-) Je otazka, co tak zjistis: podle te ukazky, cos posilal, se tomu nelibi prikaz return, tj. vyskoceni z bloku {$I OBSIDIUM_ENC_START}...{$I OBSIDIUM_ENC_END}...

Tak to return/exit se da logicky dovodit, kdyz tam vlastne vkladaji nejaky prolog/epilog kod kolem bloku, ktery maji zasifrovat/desifrovat. To bych predpokladal, ze sis nastudoval, jak se to pouziva.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 5924
  • Karma: 43
    • Verze Delphi: W10 + D11
Re:Obsidium - chyba pri ochrane súboru. Uplatniť návod
« Odpověď #9 kdy: 14-07-2021, 09:13:01 »
Ja som potreboval vedieť miesto v mojom kóde. Podľa zaslaného popisu už viem ako na to.
Citace
Tak to return/exit se da logicky dovodit, kdyz tam vlastne vkladaji nejaky prolog/epilog kod kolem bloku, ktery maji zasifrovat/desifrovat. To bych predpokladal, ze sis nastudoval, jak se to pouziva.
Návod obsidium som si prečítal. No obsidium pri ochrane niekedy vyhadzuje chyby a ani oni nevedia prečo. V takom prípade neostáva nič iné, len tie direktívy vyhodiť. Samozrejme, že je veľmi vítané, keď to miesto vieš zistiť.
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.