1. |
Re: NetManage HTML (mind) |
11 sor |
(cikkei) |
2. |
Re: A halozat gepei (mind) |
51 sor |
(cikkei) |
3. |
RE:billentyuzet figyeles (mind) |
15 sor |
(cikkei) |
4. |
Re: progi se taskbaron, se systemtray-en (mind) |
34 sor |
(cikkei) |
5. |
Re: SQL guruk! (mind) |
23 sor |
(cikkei) |
6. |
Text fajlban turkalas [long] (mind) |
142 sor |
(cikkei) |
7. |
RE: SQL Guruk (mind) |
18 sor |
(cikkei) |
8. |
Delphi es ActiveX komponensfejlesztes (mind) |
5 sor |
(cikkei) |
9. |
primszam-teszt (mind) |
19 sor |
(cikkei) |
10. |
Re:progi se taskbaron, se systemtray-en ( 15 sor ) (mind) |
31 sor |
(cikkei) |
11. |
Re: primek (mind) |
18 sor |
(cikkei) |
12. |
Extenderek (mind) |
11 sor |
(cikkei) |
13. |
Re: Re: Nem szabad nagy text fajlban turkalni! (mind) |
13 sor |
(cikkei) |
|
+ - | Re: NetManage HTML (mind) |
VÁLASZ |
Feladó: (cikkei)
|
>A most elkeszult progimban a NetManage ceg HTML1 komponenset hasznaltam fel.
>A kerdesem az lenne, hogy mit kell beallitanom ahoz, hogy Delphi nelkuli
>gepen is futtathato legyen a kesz progim. Azt halottam, hogy
>regisztraltatni??? kell a NetManage komponenst az uj gepen is. Sajnos nem
>tudom azt hogyan kell.
Az onregisztraciora kepes OCX/VBX/DLL/stb. fajlokat legegyszerubben a
REGSVR32-vel lehet regisztraltatni, valahogy igy:
"regsvr32 html.ocx". A regisztralando konyvtarakat egyebkent a NetManage
komponensek helpje tartalmazza az "Installation Process" topicban.
Gabor
|
+ - | Re: A halozat gepei (mind) |
VÁLASZ |
Feladó: (cikkei)
|
>Ha valakinek volna rola informacioja, irhatna egy par szot arrol, hogy
>windows alatt hogyan lehetne lekerdezni, a halozat gepeit, pontosabban
>azok neveit.
procedure EnumServers(S: TStrings);
procedure EnumNetResource(RPTR: PNetResource);
type TNetResourceArray = array[1..100] of TNetResource;
PNetResourceArray = ^TNetResourceArray;
var Err,I,Count: integer;
H: THandle;
Buf: PNetResourceArray;
BufSize: longint;
;
Gabor
|
+ - | RE:billentyuzet figyeles (mind) |
VÁLASZ |
Feladó: (cikkei)
|
> Szuksegem volna olyan peldaprogramra (w95, bc4.5), amely megmutatja,
>hogy lehet figyelni a billentyuzetrol erkezo uzeneteket es hogy lehet
>ezeket lekezelni. Ha csak doksirol tudtok, az is jo. Elore is koszi
>minden hozzaszolast.
>
>A DDK-ban van ra mintaprogram, amely a billentyuzet ioctrl-os
>lekerdezeset mutatja be.
>En nt-re irok drivereket, es az nt DDK-ban lattam, de ez a resz user
>szintu, tehat minden M$-on egyforma, a DDK az MSDN-rol tolthato le.
Ehhez a feladathoz nincs szukseg driver irasara, ergo a DDK sem szukseges
hozza. Nyuzer modbol egyszeruen el lehet intezni a dolgot egy globalis hook
installalasaval. Bovebbet a win32.hlp-ben ill. a MSDN-ben talalsz a
SetWindowsHookEx() fuggveny kornyeken.
Gabor
|
+ - | Re: progi se taskbaron, se systemtray-en (mind) |
VÁLASZ |
Feladó: (cikkei)
|
>Meg tudna mondani nekem valaki, hogyan lehet megcsinalni Delphi-ben vagy
>Borland C Builder 4-ben, hogy egy futo program ne latszodjon a taskbaron
>se, es a system tray-en se?
Az alkalmazasnak nem lesz ikonja a notification area-ban (ugyanis igy hivjak
azt amit te system tray nevvel illetsz), ha csak nem hozatsz te magad
(marmint az alkalmazas) explicit letre egyet, tehat ez nem gond. A
taskbarrol pedig egy, a mainform letrehozasa utan kiadott
ShowWindow(Application.Handle,SW_HIDE);-dal lehet az alkalmazast eltuntetni.
(A legegyszerubb ha a project fajlba irod be kozvetlenul a mainformhoz
tartozo Application.CreateForm()-os sor utan.)
>A lenyeg az lenne, hogy ne lehessen Alt+Tab-bal ralepni.
Ahhoz, hogy az Alt+Tab-os listaban se jelenjen meg a task, ahhoz vagy
service-nak kell lennie (illetve W9X-ek alatt a
RegisterServiceProcess()-szel inditas utan pszeudo-service-sza kell
"alakitani"), vagy a toolwindow attributummal kell rendelkezni. Ezt valahogy
igy lehet elerni:
type TForm1 = class(TForm)
....
procedure CreateParams(var Params: TCreateParams); override;
....
end;
procedure TForm1.CreateParams(var Params: TCreateParams);
;
Gabor
|
+ - | Re: SQL guruk! (mind) |
VÁLASZ |
Feladó: (cikkei)
|
>Egy nagy tablaban kellen megneznem, hogy van-e duplikacio bizonyos
>mezok teren.
>A tabal merete kb. 15 millio rekord, az egy adagban vizsgalando tetelek
>szama kb. 200 rekord. (T1.terul = x szures eredmenyekent)
>En igy csinaltam:
>
>Select ID from Tabla T1
> where T1.terul = x
> and exists (select ID from Tabla T2
> where T2.a = T1.a and T2.b =T1.b
> and T1.ID <> T2.ID)
>
>van ennel jobb, gyorsabb megoldas?
Bar nem probaltam ki, de beagyazott select-nel minden valoszinuseg szerint
gyorsabb, ha az egyezosegre vizsgalando mezok alapjan "group by"-olsz, es
egy egyszeruen megnezed, hogy az egyedi azonositok count()-ja nagyobb -e
mint 1, valahogy igy:
select ID from Table
group by a, b
having count(ID) >= 2
Gabor
|
+ - | Text fajlban turkalas [long] (mind) |
VÁLASZ |
Feladó: (cikkei)
|
:
Re: Nem szabad nagy text fajlban turkalni!
Tue Feb 27 08:33:17 CET 2001 CODER #1102:
....
>Kérlek ne bősz hangnemmel olvasd a levelem...
DEEE ;))))
>A probléma ott kezdődik a mai programozó világgal, hogy túl könnyedén
>alkotható valami futni látszó dolog ezekkel az automatikus program-generátor
>eszközökkel, ...
No, egyenlőre semmi CASE eszközről szó nincs, csak jó öreg relációs
adatbáziskezelőkről.
>Bevetésük mérlegelésekor nem egyetlen tábla mérete a
>szempont, hiszen egy adatbáziskezelőnek ugyanúgy memóriára van szüksége, és
>ugyanolyan megoldásokat fog használni mint te, ha jó programot írsz.
Hmmm... hát nem hinném, hogy a többség egy abszolút profi, aki képes
kielemezni , és nagyon jó hatékonysággal lekezelni a néhány tucat fajta
join-t, szűrést, ind exelést, beszúrást, törlést implementálni, mindezt
több szempontú, fába épített, i/o-ra kihegyezett index fájl kezeléssel...
és ez sajnos már minimális méretű problémá knál is szóba kerül - pl egy
szimpla web-es adatkarbantartás is legalább fél tucat t áblánál kezdődik,
ha tiszta, átgondolt adatbázis modellről van szó.
>Sokkal többet nyom a latban az adatbázis komplexsége, a relációk bonyolultsága
,
>amikor azt lehet mondani, igen ezzel nem érdemes "kézzel" foglalkozni,
>csinálja meg egy database manager, hiszen ezért írták. Szerintem egy
>egyszerű, néhány táblás adatbázist sokkal ésszerűbb saját magadnak kezelni,
>mert egy adatbáziskezelő bevonása feleslegesen hízlalja és lassítja a
>dolgot, nem beszélve néhány felesleges réteg, egy fekete doboz (még ha oly
>megbízható is) jelenlétéről ami a rendszer integritásának nem tesz jót.
Ezt mondom én is.
>Hangsúlyozom, tapasztalat szükségeltetik hozzá, nem kicsi, ebben
>egyetértünk.
A tapasztalat egy igen drága jószág, és ha lehet, innen térjünk át a
költség al apú vizsgálatra.
>Van néhány ilyen saját "adatbázis kezelőm" régről, egyszerűbb problémák
>esetére, és nem mondanám, hogy "iszonyatos rossz hatásfokkal" bírnak.
>Nem eresztgetek rá semmire quicksort-ot, mert inkább megírom. És az gyors.
>De tényleg. 19 éve programozok, ebből jó sokat németországban, automatizálásba
n,
>ahol leginkább microsecundomokért, vagy egy-egy bit-ért folyik a harc. Igaz ez
inkább
>microcontroller környezet, de azért akad PC program is bőven. Ha lamer
>lennék - ahogy írtad - elég valószínű, hogy börtönből írnám ezt az
>E-mail-t...
Ok, lamer visszavonva, de egy alaptételt soha nem lehet elégszer kimondani:
"a megoldás költségébe bele kell számolni az optimalizálás költségét is".
Namármost a legtöbb helyen bizony a rendkívül költséges programozói erőforrás
a döntő tényező, tetszik, vagy nem tetszik, de így van. Amiért Te billentyűt
ragadtál, azért lehet, mert nálad a végső megoldás értéke rendkívüli módon
függ a teljesítménytől - az átlagos helyen azonban nem így van: az optimum
itt sokkal inkább a "10-szer gyorsabb programozás, 25%-kal lassabb program"
szemlélet alapján lesz meghatározva. Senkit nem érdekel, hogy 2 hónappal
később egy kicsivel gyorsabb programot teszel le az asztalra, ami még további
fél évig el-el szállogat - nekik sokkal inkább egy MEGBÍZHATÓ rendszer kell -
nem kifinomult.
Tehát:
- gondos tervezés (elméleti alapok!)
- minél magasabb szintű, letesztelt (vagyis ismert hibájú) eszközöket kell
alkalmazni
- ahol szűk keresztmetszet van, ott használni a csúnyább, de hatékonyabb
eszközöket
>...A lényeg - és ezzel a gondolattal kezdtem a levelet - a
>programozás elsajátítása. A Hix-es srácok többsége most tanul programozni.
>Csak nézz körül, a bankokban, boltokban, gyógyszertárakban, hivatalokban,
>orvosi rendelőkben, ahol sok (de nem minden) esetben egy "adatbázis-zseni"
>rendszere fut. TISZTELET A KIVÉTELNEK!!! A legtöbbel alapvető gondok vannak,
>mert nem lehet így elsajátítani egy megfelelő látásmódot, amivel egy összetett
>egész rendszert el tud képzelni, meg tud tervezni. Ez nem programozás,
>hanem gányolás, mert ezek a delphi, meg CAVO, meg Foxpro, stb.. sz*rok
>nem tanítanak meg rá, hogyan kell gondolkodni. Nem lehet úgy KEZDENI,
>hogy mindjárt PII-es proci, meg 128MB RAM áll a rendelkezésükre, és
>alapvető "tudniillik" dolgokat elintéz helyettünk a delphi. Szerintem egy
>adatbázis kezelőt akkor szabad használni, ha érted, mit csinál, hogyan
>működik, és elméletben meg tudnál egyet írni.
>Ha mindenki a megírt automata black box-okat használja, ki fog végül programoz
ni???
Bocs, de butaság - miért kellene tudni autót terveznie egy szervizes
szakembern ek? Ha rossz is a hasonlat, a lényeg: az adatbáziskezelők
magasszintű eszközök, ame lyek évtizedek óta bizonyították a
hasznosságukat.
"A fekete dobozokat nem szabad feltörni, amíg jól működnek."
Nem kell mindent tudni, csak jól használni a rendelkezésre álló
eszközöket! Én jobban megbecsülök egy ácsot, aki határidőre felépíti a
tetőmet, mint egy tudóst, aki minden tetőn ható erőt kiszámít, de
gyakorlatban nem használható semmire a tudá sa. Vagyis semmi kivetnivaló
nincs a jó Delphi programozóban, ha elég hatékony leké rdező programot
csinál. A magasszintű eszköz nem hordozza magában azt, hogy rosszabb
program születik - azt bizony a programozó trehánysága hozza. Sőt,
általában üzembiztosabb program az eredmény (lásd C - C++). Lehet, hogy az
a bajod, hogy úgymond boldog-boldogtalan képes összedrótozni egy
nyilvántartó programot, és nem marad meg a szakma olyan
arisztokratikusnak, titokzatosnak, mint volt régebben? ;)
....
>Én úgy gondolom, ez a megfelelő idő - mikor még nem munka, csak tanulás,
>szórakozás a programozás - arra, hogy megtanuljon az ember ilyesmit, mint
>pl. ez textfile-os probléma. Na igen, nem kéne mindjárt 400MB-al kezdeni.
>:))
Ok, én is magamtól szívtam fel a tudást, ezer műproblémán keresztül. Itt
jöttem rá a "megfelelő eszközt a megfelelő feladatra" elvre - miután 26 féle
rendező algoritmust lekódoltam és eldobtam. Éles probléma és tanulás - teljesen
más megközelítést kíván.
>Egy ellenpélda: Egy nagyon jó munkája van most a cégemnek ahol egy
>Internetes adatbázist kell kezelni Web felületről. Az ügyfélnek már régen me
>gvan a szolgáltatója, nem akar váltani. A szolgáltató csak Perl script-eket
>enged futtatni. No MySQL!!! Na most mit csinálnék, ha lamer lennék?
>Visszaadnám a munkát. Az egész adatbázis 8-10 tábla 2000-4000 record-dal, és
>igazán egyszerű relációkkal. Megcsináltam Perl-ben az egészet, igen rövid
>idő alatt.
Csak nem Elender, akik webhelyén éppen most csináltam egy Perl-es
adatkezelést? ;(
Csak azt tudom mondani: nem ideális megoldás, gányolás. Mi van, ha a
megrendelő holnap egy másik típusú JOIN-t akar? egy nap szenvedés?
>A levelemmel nem bántani akartalak, kérlek ne értsd félre, csak egy másik
>aspektust szerettem volna megmutatni.
No porblem, a következtetés ugyanaz: 1-2 táblánál többnél relációs
adatbáziskezelő az adekvát eszköz.
//bocs a hosszúért...
--
Józsi
|
+ - | RE: SQL Guruk (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Hi !
1. az Exist -t es legfokeppen a NOT EXIST -t keruld,implicit descartes
szorzatot eredmenyezhet.
ezt hasznald ( ha jol ertettem a select-t)
select id
from gyerek sz
where sz.terul = x
minus
select id
from szulo l
where sz.terul = l.terul
and sz.a = l.a
and sz.b = l.b
McCore
|
+ - | Delphi es ActiveX komponensfejlesztes (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Sziasztok!
A topikban levo temakorben keresek mindenfele dokumentaciot, elsosorban
nem peldakomponensek erdekelnek, hanem reszletesebb dokumentaciok. Az
sem lenne rossz, ha magyar nyelven lenne, de ez nem szukseges. Koszonom,
Szabolcs
|
+ - | primszam-teszt (mind) |
VÁLASZ |
Feladó: (cikkei)
|
kedves Coderek,
mindenkinek koszonom a tippet a primszam-teszteleshez.
Rengeteg levelet kaptam maganban is, es ide is.
Igy megoldodik a dolog, a kovetkezo modszert fogom hasznalni,
amelyben
tobb otletet is felhasznaltam:
1.tarolom a primeket 1-65535-ig.
2.ha a keresett szam <65536, akkor megnezem benne van-e a tombben.
3.ha a szam>65536 es (szam mod 6) nem 1 vagy 5, akkor biztos nem
prim.
4.ha a szam >65536, de <(65536)^2 akkor megprobalom az oszthatosagot
a tomb elemeivel, egeszen a szam negyzetgyokeig.
ha nem oszthato egyik primmel sem, akkor o maga prim.
Igy egeszen 2^32-ig tudok ellenorizni viszonylag gyorsan, es 2^16-ig
meg gyorsabban.
Megegyszer koszonom mindenkinek a segitseget,
udvozlettel:
Kozma László
|
+ - | Re:progi se taskbaron, se systemtray-en ( 15 sor ) (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Csao,
> Meg tudna mondani nekem valaki, hogyan lehet megcsinalni Delphi-ben vagy
> Borland C Builder 4-ben, hogy egy futo program ne latszodjon a taskbaron
> se, es a system tray-en se? A lenyeg az lenne, hogy ne lehessen
> Alt+Tab-bal ralepni.
Kulonben mihez kell?????
Ugye nem virus meg hasonlo ????????
Te a RegisterServiceProcess-t keresed. Nem dokumentalt! :)
Ez egy exportja a Kernel32.dll-nek. Be kell Loadlibrary-zni ha nem
hasznalod a progidban. Majd getprocaddress a cimet es mar hivatod is.
Deklaracio:
??? RegisterServiceProcess(DWORD hwnd, DWORD hide);
nem tudom mi a visszateresi erteke :( de gondolom BOOL
hwnd ha hwnd = 0 az ezt a fgv-t hivo process-t jelenti.
hide ha 1 akkor elrejt
ha 0 akkor elohoz.
Van hozza ASM demo is.
Aki keri az irjon privatba.
> Toltsed le az SDK-at es nezd meg a service programozast, mert ahogy
> ertelek Neked az kell .
Ez sem utolso dolog.
Alex.
|
+ - | Re: primek (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Eloszor is, hany primrol van szo ??? Mennyi mem van, es mennyi ido ??
Ezektol fuggg a legjobb algoritmus. Nekem az eddigi leggyorsabb
algoritmusom igy nezett ki :
-Gyokig neztem az oszthatosagot
-Nem hasznaltam az sqrt utasitast, mert feleslegesen lassu
-taroltam a primszamokat es csak azokkal osztottam -> REngeteg mem kell
-A kettovel es 5-tel oszthato szamokat eleve kihagytam A 7 es a tobbi
rengeteg bonuszszenvedes, es csak 1-3 szazalek javulas, szoval
tovabb nem eri meg.
Ha van eleg mem, akkor kell egy tablazat, es beletenni minden szamhoz hogy
prim-e.
Ha nincs mem, de ido van, akkor ellenorzofuggveny, tarolas nelkul.
HA van keves mem, es nincs tul sok ido, akkor tarolni kell az elso n
primet, es a tesztfuggveny ezt hasznalja, ha elfogytak akkor paratlan
szamokkal nyomul tovabb.
Eggor.
|
+ - | Extenderek (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Hi all!
Tudna valaki valamilyen infot nyujtani az extenderekrol alatalaban
(Dos4Gw meg ilyesmi) ?
Csak annyit tudok rola, hogy megy win alol, meg vedett modban.
Azert erdekelne, mert a progi amit irok, linearisan kezeli a
vidmemet, de FlatRealban, az meg nem csipi a windowst. Egyeb megoldas
is erdekelne.
(Ha nem voltam vilagos: Az kell hogy a 4 Mb vidmemet LFB-ben elerjem
Windows alol)
[the Catalisat]
|
+ - | Re: Re: Nem szabad nagy text fajlban turkalni! (mind) |
VÁLASZ |
Feladó: (cikkei)
|
To :
Hat ha a programozas oromeert csinalja, akkor irja meg:) De ha mondjuk egy
oraj a van ra, mint nekem lenne egy ilyen kaliberu feladatra es ezert
fizetik, akkor megnezem:) Ha csak nem interkontinentalis ballisztikus
raketairanyitashoz kell :) Magyarul gazdasagilag altalaban nem eri meg
specialis program irasaval tolteni ezt az idot. Es a fenntartassal is
lesznek gondok, nekem is az agyamon van most egy legacy adatbazis kezelo,
az iroja evekkel ezelott elhagyta a ceget, dokume ntacio nincs, tehat
aprankent ujra lesz irva. Tanulsag : ne talald fel ujra a k ereket, mert
evvel sok ember agyara fogsz menni es sok penzbe fogsz kerulni. Pali
(webes bekuldes, a bekuldo gepe: 62.232.84.215)
|
|