Új hozzászólás Aktív témák
-
-
Hirtelenjeben pythonra talaltram megoldast:
https://stackoverflow.com/a/32597683update: na itt van ket c#:
https://stackoverflow.com/a/19022895
https://stackoverflow.com/a/29804233 -
De ha nem akarsz osztalyokat, akkor siman egy JSON-ba berakhato az egesz es lehet ezek alapjan kezelni:
https://stackoverflow.com/a/72126357
vagy
https://stackoverflow.com/a/3806407 -
a ket form az ket kulon objektum, ugy tudsz egymas adataihoz hozzaferni, hogy az egyik formnak odaadod a masik objektum hivatkozasat es akkor a publikus elemeihez hozza tudsz ferni. Persze ha a form elemek private-nak vannak deklaralva akkor nem fog menni - de most nem remlik, hogy mi az alapbeallitas.
Progress kozben at tudsz adni barmilyen erteket, legyen az egy egyzeru valtozo, struktura vagy komolyabb objektum. A dowork fuggvenyben kell meghivnod a ProgressChanged esemenyt es atadni neki az aktualis allapotot (vagy amit kozolni akarsz az esemenyt lekezelo oldallal). -
válasz
leslie23
#9804
üzenetére
Szerintem a gond ott lehet, hogy olyan adatforrásod van, ami nem tolerálja a parallel használatot.
Esetleg próbáld meg a SqlDataAdapter és DataTable instance-eket is Using-ba rakni. Mondjuk a példák, amiket láttam SqlCommand-dal voltak (ott is berakták a Commandokat using-ba, hogy rendesen terminálva legyenek).
-
válasz
leslie23
#9798
üzenetére
COM-ot nem fogsz tudni parallelizálni szerintem, Excel COM csak egy instance-el dolgozik, össze fog akadni biztosan.
Az adatbázis más kérdés, de ha feldolgozási oldalon van a probléma, akkor nem fogsz nagyobb telejsítményt kisajtolni belőle így sem.Amúgy adatbázisban legtöbbször az a gond (INSERT-nél), hogy egyesével viszik fel a rekordokat, így minden utasítás külön tranzakció, és baromi nagy az overhead. Ha fel tudod vinni ezresével, vagy az egészet egszerre, akkor sokkal gyorsabb lesz már ettől is.
-
Igazából mehet a maradék is a try-ba, hiszen csak olyan dolog van benne, ami a try-ban csak akkor hajtódik végre, ha nem volt hiba.
Arra kell figyelni, hogy ilyenkor más hiba is elkapható (pl DataVisualization függvényben történő bármilyen hiba - ha az ott nincs elkapva és feldolgozva). -
Típus érték;
try {
érték = ami_hibát_dobhat()
}
catch (Exception_1 e)
{
// bármi amit a hiba esetén csináli akarsz
// pl logolni, vagy hibaüzenet kiírni vagy logolni
// az érték változó/objektum itt null lesz}
catch (Exception_2 e)
{
// bármi amit a hiba esetén csináli akarsz
// pl logolni, vagy hibaüzenet kiírni vagy logolni
// az érték változó/objektum itt null lesz
}
finally
{
// amit mindettől függetlenül szeretnél csinálni
// de a figyelt kódhoz tartozik
// pl kiiratás vagy logolás, de akár az érték/objektum elengedése is, ha nem null
} -
[link]
oka
* For applications that have been manifested for Windows 8.1 or Windows 10. Applications not manifested for Windows 8.1 or Windows 10 will return the Windows 8 OS version value (6.2). To manifest your applications for Windows 8.1 or Windows 10, refer to Targeting your application for Windows.
Identifying the current operating system is usually not the best way to determine whether a particular operating system feature is present. This is because the operating system may have had new features added in a redistributable DLL. Rather than using the Version API Helper functions to determine the operating system platform or version number, test for the presence of the feature itself. -
válasz
DrojDtroll
#9512
üzenetére
persze - az az adott osztályra cast-ol, vagy null-t ad - gyakorlatilag az alábbinek megfelelő synthetic sugar:
// object o = valami();
// T t = o as T;
T t = o is T ? (T)o : null; -
-
(bocsi nem neked, neki ment volna)
TL;DR
SQLite-ban nincs DateTime típus, ki kell iratni simán stringbe és meg kell néz ki, hogyan néz ki, mert lehet kézzel rakták be, nem a megfelelő datetime funkciókkal.Bővebben az SQLite doksiból:
2.2. Date and Time Datatype
SQLite does not have a storage class set aside for storing dates and/or times. Instead, the built-in Date And Time Functions of SQLite are capable of storing dates and times as TEXT, REAL, or INTEGER values:TEXT as ISO8601 strings ("YYYY-MM-DD HH:MM:SS.SSS").
REAL as Julian day numbers, the number of days since noon in Greenwich on November 24, 4714 B.C. according to the proleptic Gregorian calendar.
INTEGER as Unix Time, the number of seconds since 1970-01-01 00:00:00 UTC. -
Azért az, hogy bármelyik be sem jelentkezett felhasználó megkapja a teljes identity táblát szerintem nem szabadna túlmutasson egy főiskolai beadandón.
Még ha működik is, én úgy húznám meg az illetőt, mint a szél. Ezeknek a sz@r berögződések a javítását aranyárban mérik, amint éles kódot készít az illető egy cég számára. -
válasz
kiskornel
#9324
üzenetére
Log fájlba az alábbi dolgok kellenek:
- esemény ideje (UTC vagy timezone megadásával)
- esemény szintje (amennyiben szükséges)
- esemény típusa (és/vagy azonosítója)
- esemény forrása (és vagy forrás azonosítója)
- esemény sikeressége (ha típus szinten ezt nem különítjük el)
- esemény üzenetTehát egy logoló kódba nem kell beledobálni mindenféle objektumokat. Azt vagy egy előre definiált esemény-objektummal kell feltölteni, vagy szöveges mezőket megadni.
-
Ha "rendesen" leállítod, akkor a szerver vagy a kliens dob a túloldalra egy FIN csomagot. Ezzel értesíti a túloldalt, hogy a csatornát be kell zárni. Sztenderd módon a túloldalnak válaszolni kell egy ACK csomaggal és küldenie szintén vissza egy FIN csomagot amit a kezdeményező oldal lenyugtáz egy ACK-val. Tehát, ha normál módon (Listener.Close vagy Client.Close-zal) zársz le egy kapcsolatot, akkor a túloldal értesülni fog róla, hogy bezárod, így nem tartja nyitva a csatornát.
Alapból a TCP protokoplban nincs keepalive ping, szóval, ha kézzel vezérled a TCP kapcsolatot, akkor simná le tudod lőni a listener-t és újra felhúzni, feltéve, ha vissza tudod állítani a TCP stack-et a lezárást megelőző állapotba (tehát tudni fogod, milyen porton kivel kommunikál). -
válasz
rgeorge
#9086
üzenetére
A legegyszerűbb, ha felhúzol elé egy (akár lokális) nginx szervert, ami a TLS 1.2 kérést "degardálja" 1.0-ra. [link]
Ráadásul ezek után a sebezhető TLS 1.0 szervert be tudod állítani, hogy csak lokális kéréseket fogadjon, így a sebezhetőség nem lesz a külvilág felé kinyitva.
-
válasz
zsolti_20
#8967
üzenetére
Volt régen a Visual C++ mellé valami spy tool, amivel hozzá lehetett férni (megfelelő jogokkal) egy idegen ablak tetszőleges form-kontrolljának az attribútumaihoz (többek között a Label vagy Text property aktuális értékéhez). de ott kézzel kellett kijelölni a formot és a kontroll-t.
-
-
lehet, hogy aposztroffal együtt van letárolva a név a mezőben.
Amúgy szerintem így nem működik a null értékre. Az sql query nem az lesz, hogySELECT t.ID, t.Nev, t.NettoAr, t.Raktarkeszlet, a.Kulcs, k.Nev as Kategoria FROM Termek t LEFT OUTER JOIN AFA a on t.AFAID = a.ID LEFT OUTER JOIN Kategoria k on t.ID = k.ID WHERE t.Nev = t.Nev
hanemSELECT t.ID, t.Nev, t.NettoAr, t.Raktarkeszlet, a.Kulcs, k.Nev as Kategoria FROM Termek t LEFT OUTER JOIN AFA a on t.AFAID = a.ID LEFT OUTER JOIN Kategoria k on t.ID = k.ID WHERE t.Nev = "t.Nev" -
válasz
joysefke
#8901
üzenetére
Nekem jó tapasztalataim vannak azokkal a cégekkel ahol az IT nem belső ellenségként tekint a felhasználókra és csoportokra akiknek a jogkörét a szükséges abszolút minimumra kell csökkenteni.
Nekem pedig rossz tapasztalatom van olyan helyzetekkel, ahol 1-1 kiváló képességű rejtett fejlesztő hegeszt össze olyan cuccokat, amelyek ideális esetben akár 100-1000%-al növelik a termelékenységet (manuális feladatok automatizálása), de kritikus esetekben (pl windows update, vagy forrásrendszerek módosulása után) az adott osztály napokig nem tud dolgozni, mert az egy darab kolléga épp szabin van.
Tök jók az ilyen helyzetek, csak amikor egy saját célra készített eszköz már üzleti folyamatokat támogat, akkor ennek supportját is rendesen meg kell oldani. Ilyenkor pedig előjönnek a sztenderd kérdések/problémák:
- felhasználókezelés (minek?)
- változásmenedzsment, verziókezelés? (mi az?)
- adatforrásokat elérése (az én jelszavam van belekódolva)
- hogy illeszkedik ez a sztenderd architektúrába (van ilyenünk?)
- ezt nem fejleszthetted volna free VS.NET-ben (most ez miért gond, szabadon letölthető volt)Nem csoda, hogy az IT nem szereti látni (átvenni) ezeket a zsivány fejlesztéseket...
-
HTTP alapjában véve stateless protokoll, tehát bontja a kapcsolatot. A HTTP1.1 kiegészítéssel lehet sztenderd http keepalive-ot kapni. Viszont (főleg resource és biztonsági okból) a TCP perzisztencia viszonylag rövid idejű - 5-15 másodperc. Épp ezért főként arra használható, amire kitalálták (sok elemből álló weblap betöltése), nem pedig, amire te használni szeretnéd: fél-egy percenként némi adatot átküldeni.
Ennyi ideig nyitva tartani egy tcp portot sokkal erőforrás pazarlóbb, mint lezárni és újra megnyitni. Hagyd, hogy a network stack dolgozzon, nem jó ötlet túl sok portot egyszerre nyitva tartani (főleg akkor nem, ha nincs rajtuk forgalom). -
válasz
dudikpal
#8793
üzenetére
c# + webes több rétegű architektúra
A lokál dolgok felett már eljárt az idő. Próbáld meg átemelni e jelenlegi megoldásod webre (külön webszerver, külön auth szerver, külön alkalmazás logika (app szerver) és külön adatbázis szerver. A cél, hogy ezekben csak a szükséges dolgok legyenek megvalósítva és ezek biztonságosan (authentikálva, authorizálva, titkosítva és alárva/ellenőrizve) kommunikáljanak egymással. Néhány helyen nem lesz elég a c#, így fel kell szedned mellé némi JS-t is.
-
-
válasz
zsolti_20
#8668
üzenetére
Írtam egy alkalmazást Visual Studioban C# nyelven. Lehetséges a megírt programot eladni? Igen
Vagy van valami jogi következménye ennek? Igen, főleg, ha nem adsz számlát és/vagy nem adózol rendesen utána.
Esetleg a teljes program megvásárlása esetén tudnám csak értékesíteni ezt? Nem, a Community Edition használatával jogot is kapsz a haszonszerzéshez - amennyiben magánszemélyként vagy egyéni vállalkozóként fejlesztesz és nem egy nagy cég szerződéses fejleszőjeként dolgozol . -
válasz
joysefke
#8621
üzenetére
Az nem zavar, hogy az URL megszerzésével ellopható felhasználói fiók?
Szvsz authentikálni csak akkor érdemes, ha ténylegesen azonosítod is a felhasználókat (nem csak követni akarod őket valami módon). Amúgy meg tök mindegy, hogy egy végtelen élettartamú session azonosítóval vagy felhasználónévvel URL-ben azonosítod.
-
válasz
Froclee
#8533
üzenetére
sorry, nem neked, neki: kw3v865
Az, ha a setter esetleg másik setter-t is változtat (vagy valaminek kapcsán egy egyanez a setter meghívódik, akkor rekurzió/stack memória elfogyása lesz a vége). Ráadásul az ilyen side effect-ek jelentős feldolgozási sebesség csökkenést jelenthetnek.
-
válasz
DrojDtroll
#8490
üzenetére
Lehet érdemes lenne berakni egy 2048x2048 image-be mint 16-bites bitmap-et és ráereszteni valami veszteségmentes képtömörítést. Lehet, hogy jobban tömörítene, mint egy zip.
-
válasz
DrojDtroll
#8461
üzenetére
Ha .NET-ben programozható, akkor PowerShell-el simán meg tudod eztr csinálni.
-
válasz
DrojDtroll
#8443
üzenetére
Milyen eszköz ez? Nincs már rá valami shell, biztos neked kell megírni?
Ha korlátozott tudású a cucc (pl minimális memória), akkor nem biztos, hogy egyáltalán megéri rá parancsértelmezőt írni. -
válasz
Peter Kiss
#8398
üzenetére
Szerintem 64-bites OS-en ezek az alkalmazások 64-bitesek, és 32-bitesre fordított futtatható fájl kontextusába nem tölthetők be. Vsz ehhez lehet köze (utolsó pont)
-
-
válasz
daninet
#8200
üzenetére
Tudom, a hiba azért jön létre, mert a felugró ablaknak nem adod át a könyvek listájának referenciáját, így az inicializálatlan marad.
Így helyes:
private void újKönyvToolStripMenuItem_Click(object sender, EventArgs e)
{
UjKonyv uj = new UjKonyv(kLista);
uj.ShowDialog();
listaÍr();
}private void újIdegenKönyvToolStripMenuItem_Click(object sender, EventArgs e)
{
UjIdegenKonyv uik = new UjIdegenKonyv(kLista);
uik.ShowDialog();
listaÍr();
}A default-kontruktorokat ki is kellene törölnöd, hogy ne zavarjanak...
-
válasz
daninet
#8198
üzenetére
Látatlanban nincs átadva egyik form referenciája a másiknak, ezért dob hibát.Nincs VS a gépemen, melyik sorban dobja a hibát?Látom már:
private void újKönyvToolStripMenuItem_Click(object sender, EventArgs e)
{
UjKonyv uj = new UjKonyv();
uj.ShowDialog();
listaÍr();
}private void újIdegenKönyvToolStripMenuItem_Click(object sender, EventArgs e)
{
UjIdegenKonyv uik = new UjIdegenKonyv();
uik.ShowDialog();
listaÍr();
}Az aláhúzott részekben nem a default kontruktort kellene használni, hanem aminek átadod a könyvlistát.
BTW a magyar nyelvű függvény és változónevektől megfájdult a fejem...
BTW2 miért nem működik a kód stílusban a formázás???
-
válasz
Ereshkigal
#8092
üzenetére
erre akartam utalni, de olyabá tűnik nem volt elég szarkasztikus a nézésem...
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Anglia - élmények, tapasztalatok
- Tőzsde és gazdaság
- LED világítás a lakásban
- Autós topik látogatók beszélgetős, offolós topikja
- Meghalt a Windows 10, éljen a Windows 10!
- Luck Dragon: Asszociációs játék. :)
- Vicces képek
- One otthoni szolgáltatások (TV, internet, telefon)
- Elite: Dangerous
- ThinkPad (NEM IdeaPad)
- További aktív témák...
- Apple iPhone 11 64GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 11 64GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 11 64GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPad 9th Gen 256GB, Wi-Fi+Cellular, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy A53 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Gamer PC-Számítógép! Csere-Beszámítás! R7 2700X / GTX 1080Ti / 16GB DDR4 / 512 SSD!
- GYÖNYÖRŰ iPhone 12 Mini 128GB Purple-1 ÉV GARANCIA - Kártyafüggetlen, MS3630,100% Akkumulátor
- HIBÁTLAN iPhone 14 Pro 512GB Deep Purple -1 ÉV GARANCIA - Kártyafüggetlen, 100% Akkumulátor
- Azonnali készpénzes Intel i5 i7 i9 8xxx 9xxx processzor felvásárlás személyesen / csomagküldés
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest






