Hollosi Information eXchange /HIX/
HIX CODER 892
Copyright (C) HIX
2000-07-25
Új cikk beküldése (a cikk tartalma az író felelőssége)
Megrendelés Lemondás
1 damon ? (mind)  9 sor     (cikkei)
2 Re: VB help! (mind)  12 sor     (cikkei)
3 Builder kerdes (mind)  11 sor     (cikkei)
4 Win: Csak egy peldanyban (mind)  29 sor     (cikkei)
5 Re:Csak egy peldanyban futhat. (mind)  22 sor     (cikkei)
6 Re:Re:winapi (mind)  23 sor     (cikkei)
7 ATX OFF (mind)  17 sor     (cikkei)
8 Re: Csak egy peldanyban futhat. (mind)  42 sor     (cikkei)
9 Re: Thread uzenet es hurkok (mind)  42 sor     (cikkei)
10 Delphi ablakbezaras (mind)  11 sor     (cikkei)

+ - damon ? (mind) VÁLASZ  Feladó: (cikkei)

Sziasztok !

Szeretnek  egy damon-t, (rezidens) programot irni, milyen API, vagy
SDK function-val tudom damon-na tenni egy programot, mindezt C,C++-ban
VC alatt. Egy altalam irando driver eleszti fel event-tel.

Udv.

Tiszai Istvan
+ - Re: VB help! (mind) VÁLASZ  Feladó: (cikkei)

> az al?bbiakat ?rta a k?vetkez? ?zenetben:
news:...
> Hell?ka minden CODER-nek!
>
> Lenne egy k?rd?sem: hogy lehet futtat?si id?ben egy text box-ba ?j
> sort besz?rni.

A Textbox Multiline tulajdonsagat TRUE-ra allitod, majd a kodban:
text5.text=text5.text & vbCrLf & "ez az uj sor tartalma :)"
a vbCrLf a soremeles, kocsivisszanak felel meg , azaz chr$(10) & chr$(13)
minden jot,
   hoszi
+ - Builder kerdes (mind) VÁLASZ  Feladó: (cikkei)

Szia coderek!

A kerdes: lehet-e, ?s ha igen hogyan, Builderben az azonos komponenseket 
valahogyan tombositeni. Magyarul ne kelljen pl. 150 CheckBoxot egyesevel 
allitani, hanem mintha egy tomb lenne, indexek alapjan tudnek rajuk 
hivatkozni, vagy akar mindet egyszerre modositani. Azt hiszem Delphiben
valahogyan meg lehet oldani. Es Builderben??

koszi

six
+ - Win: Csak egy peldanyban (mind) VÁLASZ  Feladó: (cikkei)

Udv mindenkinek

Tamas wrote:
>Az ablakfejlec szovegenek megkeresese nem igazan jo,
>mert egy teljesen mas programnak is lehet ilyen nevu
>ablaka, es mi van akkor ha az en programomnak
>mondjuk egyaltalan nincs ablaka ?
 
 En ugyan Delphi-ben csinaltam ezt, de szerintem ez eleg jo.
Marmint az ablak fejlec megkeresese. Ugyanis minden 
 proginak amelyik fut, van egy ablaka, meg ha nem is latszik.
Amikor minimalizalsz egy ablakot, lent a statusbar-on meg-
jelenik egy nev, ezt kell keresni. Ha ennek kuldesz egy
WM_CLOSE uzenetet, akkor az fogja, es mindegy ha
eppen mas abalaka aktiv a programnak, venni fogja az
uzenetet es bezarja magat. Maskepp egyebkent nem is 
tudsz neki uzenetet kuldeni, legfeljebb egy terminateprocess-t
de az durva es nem hagy neki idot menteni meg ilyesmi.
Ha tudsz netan jobb modszert bezarni egy masik, nem child
alkalmazast, akkor tudasd velem is.
Termeszetesen arra is jo hogy megnezd, hogy fut-e mar
a progid. Delphiben az Application.Title volt az amit kerestem
es ha ketto vagy tobb peldanyban talaltam, akor aktivva 
tettem a masikat, a sajatomat pedig bezartam. Es meg
mukodik is.
Egy masik modszer Mutex-eket (ezek egyfajta jelzolampak)
beallitani, es keresni. Sajnos en sem tudok sokat roluk.

Csabi.
+ - Re:Csak egy peldanyban futhat. (mind) VÁLASZ  Feladó: (cikkei)

A CODER 0891-ban irta :

>Olyan programot szeretnek irni win32-ben, amelyik
>csak egyetlen peldanyban futhat. 16 bites kornyezetben
>a WinMain fgv. hPrevInstance parametere megoldotta a
>problemat, de win32-ben ez nem mukodik.
>Az ablakfejlec szovegenek megkeresese nem igazan jo,
>mert egy teljesen mas programnak is lehet ilyen nevu
>ablaka, es mi van akkor ha az en programomnak
>mondjuk egyaltalan nincs ablaka ?
>
A progi inditasakor letre kell hozni egy szemafort,ill vizsgalni, hogy 
van-e mar.
A CreateSemaphore / OpenSemaphore kornyeken nezz korul.


Udv,
-banjo-

 HIXEditor 1.13

Ui.: Ment maganba is
+ - Re:Re:winapi (mind) VÁLASZ  Feladó: (cikkei)

A CODER 0891-ban irta :
>
>Nem kotozkodni akarok, csak a pontossag kedveert: nem ugorna a vakvilagba,
>mive l a stack mindig egyfajta meretu operandusokkal muxik, ez jelen
>esetben gondolom 32 bit. Tehat a short is kiegeszulne 32 bitesre,
>legfeljebb ertelmetlen lenne a felso word ha nincs tipuskonverzio.
>
En sem akarok kotozkodni, de a stack nem mindig 1 fajta meretu.
A push ax pl 16, a push eax 32 bitet tesz a stackre. Hogy _egyes_
programnyelvekben mi a szokas es mit hova konvertal a compiler az mar mas
kerdes.
Ha egy 16 bites param.atadasnal push word ptr [parameter] -t general, -amit
nem lehet a szemire hanyni neki - pont ket byte megy a stackre, es ha egy
API fv-t igy hiv, akkor bizony a vakvilagba ugrik.
Az eredeti kerdes VFP -re vonatkozott, nem allitom (nem in allitottam),
hogy ott igy tortenik, de elvileg lehetseges.

Udv,
-banjo-

Ez a level HIXEditor 1.13-al keszult.

Ui.: Ment maganba is
+ - ATX OFF (mind) VÁLASZ  Feladó: (cikkei)

Hali!
Volt egy progi a mostani CHIPCD-n, ami kikapcsolja az ATX-es gepeket dos
alol. Be lehet ezt illeszteni egy Pascal programba, es onnan futtatni?
Ha igen, akkor hogyan?

Tehat a progi (UUEncode):
> -----------------------------------------

sum -r/size 15417/29
> -----------------------------------------

Elore is kosz!

Udv: Adam
+ - Re: Csak egy peldanyban futhat. (mind) VÁLASZ  Feladó: (cikkei)

>Olyan programot szeretnek irni win32-ben, amelyik
>csak egyetlen peldanyban futhat. 16 bites kornyezetben
>a WinMain fgv. hPrevInstance parametere megoldotta a
>problemat, de win32-ben ez nem mukodik.
>Az ablakfejlec szovegenek megkeresese nem igazan jo,
>mert egy teljesen mas programnak is lehet ilyen nevu
>ablaka, es mi van akkor ha az en programomnak
>mondjuk egyaltalan nincs ablaka ?
A dolgot ugy a legpraktikusabb megoldani, hogy a programban letrehozol
valamilyen intreprocessz kommunikacios csatornat/objektumot (mutex-et
szoktak javasolni, de szemafortol kezdve a named pipe-ig minden ugyanilye
jo) es inditaskor ennek megletet vizsgalod. (Ha letezik akkor nyilvanvaloan
mar fut egy peldany a programodbol.)
Tehat pl. CreateMutex()-szel megprobalsz letrehozni egy egyedi nevu
mutex-et, es ha a fuggveny ERROR_ALREADY_EXISTS-szel ter vissza, akkor mar
fut egy peldanyod...

>Egy masik kerdes:
>
>Mire jo ha egy static valtozot deklaralok fuggvenyen belul
>valahogy igy:
>
>void fuggveny (void){
>  static int valtozo;
>  ...
>  }
>
>Mi ortenik akkor ha ezt a fuggvenyt ketszer is meghivom egyidoben.
>Ilyenkor ket peldany is fut belole, de a static valtozo ugyanaz lesz ?
A dolog lenyege, hogy a static-nak deklaralt valtozok (bar szkopjuk a
lokalis valtozokhoz hasonloan csak egy adott fuggvenyre korlatozodik)
valojaban a globalis valtozokhoz hasonloan az adatszegmensben foglalnak
helyet, tehat ertekuket megorzik a fuggveny hivasi menetei kozott is
(magyarul a fuggvenybe belepeskor az lesz az ertekuk, ami utolso hivas soran
a kilepeskor volt).

>Miert jo ez , hol lehet hasznalni ?
Tipikusan akkor hasznaljak ha egy olyan valtozora van szukseguk ami megorzi
erteket a hivasok kozott, de azt nem akarjak globalisnak deklaralni, mert
csakis ez az egyetlen fuggveny hasznalja azt...

Gabor
+ - Re: Thread uzenet es hurkok (mind) VÁLASZ  Feladó: (cikkei)

>1. Egy tobbszalu programot tervezek, de van neheny technikai problemam. A
>PostThreadMessage() API fuggvennyel uzenetet kuldhetek egy megadott
szalnak.
>Azonban a szalban nem tudom az uzenetet kiolvasni. Esetleg a GetMessage()
>fuggveny HWND parameterebe a szal leirojat adom, vagy masik fuggvennyel
kell
>a szal-uzeneteket kiolvasni?
Nem. a GetMessage()-dzsl kell kiolvasni, csak hWnd parameterkent 0-at kell
megadni.
Arra figyelj, hogy ez ilyenkor nem csak a szalhoz tarsitott, hanem a szal
altal birtokolt osszes ablak uzenetsorat is vizsgalja, tehat ha van a
szalban letrehozott ablakod, akkor az azoknak szolo uzenetet megfeleloen
dispatch-olni kell. (Persze VCL alatt ez nem gond, mert elvileg ott csakis a
foszal birtokolhat vizualis komponenseket.)
Az interprocessz kommunikacionak egyebkent vannak az uzeneteknel szebb
formai is, mint pl. a mutexek, pipe-ok, szemaforok, stb. (a feladat jellege
donti el, hogy melyiket erdemes hasznalni).

>2. Van meg egy problemam. Csinaltam egy hurkot (hook), tipusa WH_KEYBOARD,
Szerintem ezt nem "hurok"-nak hivjak, hanem max. "kamponak" (mert hogy
"beleakaszkodik" a rendszer uzenetsoraban), bar oszinten szolva meg nem
lattam magyar forditasat. Praktikusabb az angol terminologianal maradni - az
egyertelmuve teszi a dolgokat...

>tehat a billentyuzet esemenyeire hivodik meg. Ehhez kellett keszitenem egy
>fuggvenyt, amelynek igy kell, hogy kinezzen:
>LRESULT CALLBACK KeyboardProc(
>    int  code, // hook code
>    WPARAM  wParam, // virtual-key code
>    LPARAM  lParam  // keystroke-message information
>   );
>Nos, ez egy igen erdekes dolog, ugyanis a fuggvenybol megtudom a wParam es
>az lParam erteket, csak eppen az uzenet tipusat nem tudom (ti. WM_KEYDOWN
>vagy WM_KEYUP). Nekem pedig ezekre az informaciokra is szuksegem lenne.
Ez az informacio meghatarozhato az lpParam (KeyFlags) 31. bitjenek
vizsgalataval is, hiszen ez a bit adja meg a billentyu elozo allapotat (hogy
le volt -e nyomva elozoleg vagy sem). Erteke a gomb lenyomasakor generalt
esemenyek (WM_KEYDOWN, WM_SYSKEYDOWN) eseten 0, mig 1-es erteket tartalmaz a
felengedeskor generalt esemenyek (WM_KEYUP, WM_SYSKEYUP), illetve az
automatikus billentyu-ismetles (amikor lenyomva tartjuk a gombot) soran.

Gabor
+ - Delphi ablakbezaras (mind) VÁLASZ  Feladó: (cikkei)

Koszi mindenkinek, aki valaszolt...
Valaki irna ide a listara egy kis peldakodot?
Pl: Az ablak az Outlook Express, az az egyetlen ablak, a
progi ablakan kivul. Tehat tobbi ablakos program nincs, es
mondjuk ha elindul az en progim, akkor az rogton bezarja
az OE-t, es aztan o maga is felszivodik...
Az Outlook Express felirata pedig "Outlook Express".

Udv:
Tamas


AGYKONTROLL ALLAT AUTO AZSIA BUDAPEST CODER DOSZ FELVIDEK FILM FILOZOFIA FORUM GURU HANG HIPHOP HIRDETES HIRMONDO HIXDVD HUDOM HUNGARY JATEK KEP KONYHA KONYV KORNYESZ KUKKER KULTURA LINUX MAGELLAN MAHAL MOBIL MOKA MOZAIK NARANCS NARANCS1 NY NYELV OTTHON OTTHONKA PARA RANDI REJTVENY SCM SPORT SZABAD SZALON TANC TIPP TUDOMANY UK UTAZAS UTLEVEL VITA WEBMESTER WINDOWS