Poslední příspěvky

Stran: [1] 2 3 ... 10
1
Dobrý den,

je možné zapnout upozornění, že jsem volal funkci, ale zapomněl využít její návratovou hodnotu?

Používal jsem geometry.pas, ta obsahovala
Kód: [Vybrat]
function VectorNormalize(V: array of Single): Single; assembler; register;(vracela původní délku vektoru a to pole hodnot na vstupu změnila)
Já jsem to tedy volal VectorNormalize(Normala), původní délka mne nezajímala, stačilo mi, že byla upravena Normala.

V nové verzi v GLVectorGeometry.pas (z GLScene) definici změnili:
Kód: [Vybrat]
function VectorNormalize(const V: TAffineVector): TAffineVector; overload;Bohužel tím pádem se moje původní volání zkompiluje bez chyby, akorát že už nedojde ke změně té proměnné.

Všechny výskyty jsem si ve zdrojáku našel a zaměnil za volání jejich nové procedury:
Kód: [Vybrat]
procedure NormalizeVector(var V: TAffineVector); overload;(Mít takhle podobně pojmenovanou proceduru a funkci, to je dobrý způsob, jak vnést spoustu špatně se hledajících chyb do programu...)

Jenže bohužel stejným způsobem změnili i řadu dalších funkcí a určitě se mi stane, že některých si nevšimnu.
Nevíte, jestli se dá zapnout nějaká kontrola, zda je využita návratová hodnota funkcí? To by mi pomohlo najít podezřelá místa.

Díky,

KR



2
Obecné / Re:ImageList + ActionManager + ActionToolBar -> obrázky
« Poslední příspěvek od Delfin kdy Dnes v 13:18:41 »
Ten CnWizards ImageList editor nepridáva pre mňa žiadnu prídavnú hodnotu. To sťahovanie ikon z internetu mi neponúka žiaden extra výber.
Predpokladám, že v konečnom dôsledku je jedno čo použijem. Ak by som chcel použiť zabudované motívy v Delphi aj tak by som ten manifest tam musel mať. Vzhľadom na skutočnosť, že používam TMS, tak ma ich motívy nezaujímajú. Jedine, že by sa to dalo používať súbežne. Potom by som bol frajer s toľkými motívmi ;D . A bez námahy.

Ten CnWizards editor se da samozrejme vypnout. Jinak on ten aplikacni manifest neni prilozen jen kvuli motivum. Ale v tomto pripade to bude (s nejvetsi pravdepodobnosti) prave to co ten editor vyzaduje (povolenim Enable runtime themes se totiz do manifestu prida pozadavek na minimalni verzi Comctl32 assembly).

Pokud ten editor nechces (a vypnes) a se standardnim se Ti obrazky chovaji jak maji, nemusis nic resit.

Jen dodam ze je rozdil mezi styly Windows a VCL styly Embarcadera. Styly Windows se aktivuji jen pomoci manifestu, zatimco VCL styly jsou nezavisly zpusob kresleni komponent z "obrazku". Cili pokud pouzivas 3rd party skinovaci framework a nechas volby Enable runtime themes a v Appearance nechas jen Windows default style, nic se nestane. Aplikace bude pro Windows proklamovat ze by si prala pouzit vizualni styl a chovani komponent urcitym zpusobem. Jak je bude aplikace kreslit uz je ale na ni (resp. tom 3rd party skinovacim frameworku). Nakonec i ten framework muze pozadovat v manifestu pozadovat urcitou proklamaci.
3
Obecné / Re:ImageList + ActionManager + ActionToolBar -> obrázky
« Poslední příspěvek od Stanislav Hruška kdy Dnes v 09:58:59 »
Ďakujem za vysvetlenie. Ten dôvod uvedený nie je. Viď prvý obrázok.
S tým pridaním manifestu máš pravdu. Viď druhý obrázok.

Ten CnWizards ImageList editor nepridáva pre mňa žiadnu prídavnú hodnotu. To sťahovanie ikon z internetu mi neponúka žiaden extra výber.
Predpokladám, že v konečnom dôsledku je jedno čo použijem. Ak by som chcel použiť zabudované motívy v Delphi aj tak by som ten manifest tam musel mať. Vzhľadom na skutočnosť, že používam TMS, tak ma ich motívy nezaujímajú. Jedine, že by sa to dalo používať súbežne. Potom by som bol frajer s toľkými motívmi ;D . A bez námahy.
4
Obecné / Re:COM klient ve vlákně
« Poslední příspěvek od Morrison kdy Dnes v 00:34:21 »
Takže jestli tomu správně rozumím, pokud použiju
Kód: [Vybrat]
CoInitFlags := COINIT_MULTITHREADED;tak sice stejně musím zavolat CoInitializeEx() i ve vedlejším vlákně (kde žije můj COM objekt), ale budu potom moct volat metody jeho interfejsu klidně i v kontextu hlavního vlákna aplikace?
Potom, co jsem striktně odstranil všechna volání interfejsových metod ze Synchronize() už všechno chodí správně, takže problém byl skutečně tam.

Tak nebo tak, každopádně díky moc vám všem za rady, velmi si jich cením!
5
Obecné / Re:ImageList + ActionManager + ActionToolBar -> obrázky
« Poslední příspěvek od Delfin kdy 21-10-2017, 22:27:59 »
Tak to som si vôbec nevšimol. Dúfam, že to nie je na škodu. Lebo pri voľbe XP Style vyžaduje manifest.
Ak áno, tak to radšej prerobím.

Ne, ne. Pokud si spravne pamatuju, manifest bylo explicitne nutne pridavat v Delphi 7. Od novejsich verzi Delphi je defaultne soucasti generovane binarky (minimalne kvuli runtime stylovani aplikace). Nedival jsem se proc je manifest vyzadovany tim CnWizards editorem, ale bude to nejspis souviset s verzi Windowsi knihovny Comctl32 (manifest aplikace pomoci nej sdeli Windows, jaka minimalni verze knihovny je podporovana). Obrazek je z Tokyo verze Delphi (starsi mely do urcite verze jen check box rikajici neco ve smyslu "Enable runtime themes", coz automaticky pridavalo do binarky manifest). By default by v Delphi XE7 VCL aplikaci mel byt pridavan automaticky, takze staci nastaveni projektu nemenit a manifest tim zachovat:



Jinak gratulace Piratum do CR :) Doufam ze tam u vas vyplodi spoustu novych IT projektu ktere budou tvoreny na urovni (ne jen ve vysledku nefunkcni pracky na dotace). Jasne, ne v Delphi ;D
6
Obecné / Re:ImageList + ActionManager + ActionToolBar -> obrázky
« Poslední příspěvek od Stanislav Hruška kdy 21-10-2017, 21:24:57 »
Tak to som si vôbec nevšimol. Dúfam, že to nie je na škodu. Lebo pri voľbe XP Style vyžaduje manifest.
Ak áno, tak to radšej prerobím.
7
Obecné / Re:ImageList + ActionManager + ActionToolBar -> obrázky
« Poslední příspěvek od Delfin kdy 21-10-2017, 18:36:52 »
Už som na to prišiel. Musím ako prvý krok v ImageList nastaviť Use XP Style. Potom aj ico sú v poriadku.

Jen dodam ze to plati pro CnWizards ImageList editor :-X :)
8
Obecné / Re:ImageList + ActionManager + ActionToolBar -> obrázky
« Poslední příspěvek od Stanislav Hruška kdy 21-10-2017, 11:20:11 »
Už som na to prišiel. Musím ako prvý krok v ImageList nastaviť Use XP Style. Potom aj ico sú v poriadku.
9
Obecné / ImageList + ActionManager + ActionToolBar -> obrázky
« Poslední příspěvek od Stanislav Hruška kdy 21-10-2017, 10:56:17 »
Mám takúto skúsenosť:
  • *.ico - zdeformuje ich. Nedá sa ne pozerať :-X
  • *.png - nie sú priehľadné  :o
  • *.bmp - jedine toto mi funguje ako má. Ale je problém niekde niečo stiahnuť.
Najradšej by som, vzhľadom na možnosti stiahnutia z internetu, používal ico (prípadne png), ale nejde to.
Mám niečo niekde nastaviť? Nič som nenašiel.

Kúpil som si síce Axialis-PureFlat2013 ale tí sa akosi netrafili do mojich potrieb :'( .
Potrebujem napr. hasiaci prístroj, miestnosť, únikové cesty, vodomer, o programe...
10
Obecné / Re:COM klient ve vlákně
« Poslední příspěvek od pf1957 kdy 21-10-2017, 09:11:20 »
Hlavni vlakno ma COM implicitne inicializovany (diky metode Application.Initialize).

Nechci se přít, ale jsi si tím jistej? Vždyť Application.Initialize() defaultně vůbec nic nedělá.

Edit: jo tak už to vidím, v unitě ComObj.pas inicializace je. Achjo, a to jsem měl takovou radost, že už skoro jistě vím, v čem byl problém :/
Ja uz jsem s tim 10+ let nic nedelal, takze jsem to zapomel, ale v aplikacich mame prave pro tu InitComObj()
Kód: [Vybrat]
    CoInitFlags := COINIT_MULTITHREADED;
    Application.Initialize;
Stran: [1] 2 3 ... 10