- iPhone topik
- Íme az új Android Auto!
- Android alkalmazások - szoftver kibeszélő topik
- Xiaomi Watch 2 Pro - oké, Google, itt vagyunk mi is
- Nem lett arányos a fogyókúra
- Redmi Note 13 4G
- Samsung Galaxy S25 - végre van kicsi!
- Akciófigyelő: Jelentősen olcsóbban nyit az Ulefone új mindenese
- Hívószám-hamisítás
- Samsung Galaxy A34 - plus size modell
Új hozzászólás Aktív témák
-
Tomi_78
aktív tag
Értem már.
És arra van mód, hogy lekérdezzem a menüsor magasságméretét (ami most nálam 24 képpont, de ezt is az egér Y helyzetéből tudtam kikövetkeztetni)? Mert most a WorkingArea teteje (Top) 0-nál van, de mindig beleszámítja a fenti menüsort is, ami nekem nem kell.
Vagy csakis az a megoldás, hogy eltüntetek mindenféle menüsort aFormBorderStyle = FormBorderStyle.None
paranccsal? -
Tomi_78
aktív tag
Köszönöm a választ, Dqdb!
Ez alapján elindulva a Tálca tetejét a következő kóddarabbal találtam meg (remélhetőleg):Screen.PrimaryScreen.WorkingArea.Height-(Screen.PrimaryScreen.WorkingArea.Height-ClientSize.Height)
Remélem, ez különféle felbontások és méretezések esetén is megfelelően működik majd, de ezt csak próbálgatások után tudom megállapítani. -
Szancsó
aktív tag
Aaazigen. Valóban nagyon rég koptattam az iskolapadot, nem igazán rémlett ilyesmi.
Normál "hu-HU" esetén ok is lenne, a "hu-HU_technl" -nél azért el bírtam volna viselni, ha figyel az ékezetre, de ezek szerint jogos: az a 16. pontnak megfelelő spéci rendezés lenne. ("mind a magyar, mind az idegen többjegyű betűknek minden egyes eleme külön, önálló egységnek számít, és a besorolás nincs tekintettel sem a magyar ékezetekre, sem az idegen betűk mellékjeleire")
Na szép, akkor tanulhatom a magyart, plusz lehet átverekedni ügyfél oldalra a dolgotKöszönöm!
-
Keem1
veterán
Megnöveltem 500 secre, de továbbra is tök ugyanaz...
Szokás szerint eljut a "Running as service" pontig, aztán annyi... Tovább nem megy.PS C:\Windows\System32> sc start TestSrv
[SC] StartService FAILED 1053:
The service did not respond to the start or control request in a timely fashion.
PS C:\Windows\System32> -
Keem1
veterán
Igazad van, így viszont van némi infó...
if (!Environment.UserInteractive)
{
File.AppendAllLines(Logfile, new string[] { "Running as service" });
// running as service
using (var service = new Service())
{
// Ez a log entry már nem kerül be a logba
File.AppendAllLines(Logfile, new string[] { "Servicebase run" });
ServiceBase.Run(service);
}
}Itt a Running as service még benne van a logban, a Servicebase run már nincs. Tehát a service disposable már nem jön létre, ezek szerint.
-
leslie23
tag
Köszönöm, sikerült végre! Próbáltam már az asmx-et célozni, de 404-et kaptam, mint kiderült a https miatt...
Http-vel működik pöpecül, köszönöm a segítséget mindkettőtöknek!Arra viszont nem találtam példát/leírást, hogy a web reference-es kódból hogy tudnám kinyerni az XML-eket, erre tudsz linkelni esetleg valamit? A Fiddlerrel ha jól értem nekem kellene felépítenem a request XML-t.
-
joysefke
veterán
Roslyn-nal sikerült működésre bírnom a dolgot, (kb end-to-end megy fordítástól, az authentikációig és sikeres API hívásig
)
De a fordítás csak úgy működik, ha CSharpScript-et használok, ez az opció ahogy látom impliciten felhasználja a runtime betöltött assembliket referenciaként a fordításhoz /ami nincs betöltve csak azt kell referálni/.
CSharpCompilation-nal ugyanaz a fordítás nem működik. Itt nekem kéne expliciten megadni az assembly referencákat, amit természetesen hiánytalanul meg is tesztek. Aztán kapok egy undorító, Google által jól ismert fordítási hibát ami arra panaszkodik hogy a System.Net.Http.dll verzió mismatch van, az assembly ahonnal dinamikusan fordítom a kódot (és ahová interfész miatt függősége van a fordított kódnak) 4.2.0.0-t val lett fordítva, a Roslyn pedig 4.0.0.0-t akarna használni. Hogy a 4.2.0.0 honnan jött, azt nem tudom, de kézzel nem tudom betölteni. Hogy CSharpScript-tel ez miért és hogyan működik azt persze nem tudom.
Majdnem biztos vagyok benne, hogy a hibának semmi köze nincsen a Roslynhoz magához vagy akár a kódomhoz, egyszerűen nem azt a verziót kapom DLL-ből amit szeretnék.
Akik nálam jobban értenek a fordításhoz biztos meg tudnák oldani, meg lesz ez nálam is oldva, hogy "CSharpCompilation"-nel is működjön, de ez így egyáltalán nem bizalomgerjesztő...
Félek, hogy ami az én gépemen dinamikusan fordul, produktív gépen majd esetleg nem fog. Egy halom DLL-t pedig nyilván nem akarok betenni a repoba és nuget helyett azokat referálgatni vagy hasonló okosság.
===
Szóval most a pluginok kerültek fel az asztalra:
Talán ahelyett, hogy konfigból (encryptált DB-ből) on the fly fordítjuk a konkrét megvalósítás kódját, jobb ötlet lenne szükség esetén egy újabb plugin-dll-t berakni egy plugin könyvtárba aztán onnan betölteni a konkrét megvalósítást.Ilyen önműködő plugin megvalósításhoz van net 472-re ennél jobb cucc?
Managed Extensibility Framework (MEF) - .NET Framework | Microsoft DocsHasználta ezt már valaki?
-
joysefke
veterán
Eddig csak az első linket néztem meg (azt is egyelőre csak NET6-tal), de szerintem nekem pontosan erre (Roslynra) lesz szükségem.
Valamiért az volt bennem, hogy csak modern platformra van, ezért nem is néztem utána. Az "Add-Type" valami régi fordítót használ, régi C# verió támogatással és a hibaüzenetei borzalmasak.
Aztán hajrá a C# szintaktikájú saját DSL létrehozásához.
Annál azért egyszerűbbnek 'tűnik':
Http szolgáltatás daemon-kliens oldalára szeretnék a kliens HttpMessageHandler pipelinejába beépülő nem-interaktív autentikációs komponsenst (pld OAuth2 Client credentials flow) ami a lehető legszabadabban konfigurálható.A szabad konfigurálhatóság biztosítaná, hogy az autentikáció pontosan úgy történjen, ahogy az autentikációs végpont (token url) diktálja illetve a Http üzenetbe a token -vagy ami az autentikáció meglétét jelképezi -abban a formában kerüljön bele, ahogyan a szerver oldal szeretné.
Az tűnik a kiindulási állapotnak, hogy a jövőben több féle (standardtől kicsit eltérő) lehetőség lesz, mintsem hogy azt statikus konfigurációval le tudjuk fedni.
J.
-
-
sztanozs
veterán
(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. -
Keem1
veterán
Ez az, így van, sikerült is, sőt, kibővítettem úgy, hogy magába a Test osztályba tettem be a metódusokat, megfejelve azzal, hogy void helyett string a visszatérési értéke.
Nagyon köszi az útmutatást
public static class Test
{
public static string Add(string input)
{
return input;
}
public static string ToConsole(this string text)
{
Console.WriteLine(text);
return text;
}
public static string ToFile(this string text, string FilePath)
{
try
{
System.IO.File.AppendAllLines(FilePath, new[] { text }, System.Text.Encoding.UTF8);
}
catch { }
return text;
}
} -
Keem1
veterán
Hálás köszönet
Még valami!
Mivel eddig nem volt, Raspberry Pi-re fordítottam System.Data.SQLite binary-t. A NuGet a saját SQLite.Interop.dll-jét faszán megcsinálta: van egy x86 meg egy x64 mappa, benne a megfelelő dll, ugyanezen a néven. Ha az exe mellé hozzácsapom (a fenti két mappán kívül) az arm-es dll-t, akkor frankón működik. Viszont ez eléggé favágó megoldás. Ha létrehozok egy linux-arm mappát, és beleteszem a dll-t, nem találja (szól, hogy nincs ez a fájl). Rá tudom valahogy venni a Visual Studio-t, hogy "figyelj, van egy arm binary is, azt is használd"?Igen-igen, a tooljaimat már platformfüggetlenre írom. Minden faszán megy arm linux alatt is, kivéve - eddig - az SQLite. A favágó megoldással viszont már az is.
-
Keem1
veterán
Bár lehet hogy nem a legjobb stratégia, de én szeretem azokat a technikákat előnyben részesíteni, amik szinte szabvánnyá váltak és a legtöbb helyzetben egyértelműek, elfogadottak. Pl. ezért használok XMLRPC-t. Elég világosan lefektetett szabályai vannak, szinte minden platformon implementálták és mindenhol ugyanúgy használható.
Az lenne a jó, ha ugyanez XML helyett JSON-ban lenne (elvileg van rá törekvés: JSON-RPC). -
Keem1
veterán
VS 2019 Community van fent, gondolom, megfelelő lesz, ugye?
Már átállítottam a beállításokban a package reference-t.Persze, érthető hogy a lefordított projektben benne lesznek a dll-ek, csak a package-k ne legyenek már külön projektenként.
Még nem próbáltam ki, de köszönöm az infót!
-
Keem1
veterán
Köszönöm
, ez a linkelt library így első olvasatra jónak tűnik. Kipróbálom, addig a saját magam által feltalálandó spanyolviaszt felfüggesztem
Igen, webszerver elkerülése a cél. Azt nem használhatunk.Egy nagy multinál dolgozom, ahol azért nem olyan egyszerű dolgokat átvinni a security policy-n. Saját dolgainkhoz kaptunk egy helyet és egy Ethernet kábelt a helyi szerverteremben, ahová egy i7 procis Lenovo desktop gép bekerült. Ez már eleve tűzfal, proxi, stb. mögött ül, élvezve az egész épület biztonsági szolgáltatásait. A gép célja, hogy a munkánk megkönnyítése érdekében különböző toolokat futtassunk rajta. A többiek Pythonban programoznak, de én nem tudok kígyóuk, én maradnék a C#-nál. Nem programozók vagyunk, nem programok írása a feladatunk munkaidőben, ezzel a saját napi munkáinkat segítjük/kiegészítjük/egyszerűsítjük, így amihez ezek kellenek, abban produktívabbak, gyorsabbak vagyunk.
Adatbázist se használhatunk, a config adatokat ini fájlokban tároljuk. -
zsolti_20
senior tag
Ez valóban sokkal jobban működik.
Van lehetőség arra, hogy azt csinálja mint az ALT+ PT screen? Hogy csak az adott aktív ablakról csináljon képernyőmentést. Vagy egy process ID-t lekérve csinálna egy printscreent. Bár nem tudom hogy ha megnyitnék egy notepadot, majd bezárnám és újra megnyitnám, akkor honnan tudná mivé változott a process ID.
De ha már az elérhető lenne, hogy csak az aktív windows ablakról készítsen képernyőmentést az is elég lenne. -
vlevi
nagyúr
Méginkább. Biztos voltam benne, hogy C#-ban is van valami közvetlen megoldás a képernyőmásolatra.
Az üzenetküldő nem rossz dolog, de, aki nem számít rá, hogy ezek üzenetek, és bizonyos sorrendben dolgozza fel a rendszer, azt érhetik meglepeétsek. pl. jelen esetben, ha előtte van egy minimize window üzenet -
joysefke
veterán
A poén az hogy mégis működik, kipróbáltam.
Lehet hogy a bejegyzés óta eltelt majd két évben meggondolták magukat...
Sőt, egyelőre jobban működik mint a Choose/When -féle megoldás, mert ott a package upgrade csak a csomaghoz tartozó legelső verziószám bejegyzést módosítja, míg a másikban az egyetlen verziószám-bejegyzés szépen módosul.
-
joysefke
veterán
Köszi a tippet!
Lehet kipróbálom ezt is, de amikor keresgéltem, ráakadtam erre:
https://github.com/NuGet/Home/issues/5895itt meg azt írták, nem fogják megoldani, aztán valahol a hozzászólások között találtam azt a megoldást amit feljebb írtam is!
-
coco2
őstag
Céges projecteknél, amikor a termék már kint van piacon, nyilván másmilyen állapotok vannak. Például egy kezdeti gyenge design döntés miatt - amit hála az égnek ráerőszakolt a projectre valaki önjelölt "zseni" - utólag nem tehetsz mást, mint lapátolod a sza*t, amíg el nem fogy az ügyfél pénze, és akkor a cég is jóllakott, meg új termék sem került piacra, sikerült két legyet ütni egy csapásra. Elvégre minden élő dolognak táplálkoznia kell - szó nincs róla, hogy azzal vitatkozni akarnék.
Viszont aligha spanyolviasz, hogy kispolcos projectnél nincsenek olyan kötöttségek az elején, és nem kötelező design tévedéseket elkövetni.
-
coco2
őstag
Kár, hogy a fél világ ezt nem tudja,
Ha el akarnám viccelni, most azt mondanám, hála az égnek a világnak van egy olyan fele is, amelyik nem ért a programozáshoz. Nélkülük nem lenne, aki fizet érte.Hanem a redisből én akkor sem kérek. Az a része húzós volt, mire a 7 sql táblányi szénaboglyát le tudtam cserélni 8 kbyte-os user profileokra, de így utólag már mezei file-ok és memória blokkok elegendőek az sql szerver helyett, ami bizony egyszerűbbé teszi a dolgokat - akár hiszed, akár nem.
Részemről inkább azt a kérdést tartom nehezen megválaszolhatónak, hogy a c# topikban miért c stuffokat preferálnak a népek?
-
coco2
őstag
A memory cache résszel nincsen problémám, azt könnyű megírni egyébként is, a linkelt webes kiszolgálók pedig nem támogatnak tls-t, és anélkül kb használhatatlanok. Már minden https, amit csak weben fellelni lehet. A chrome is, meg a firefox is konkrétan blokkolják, ami nem támogat https-t, legyen az akár csak egy webapi kiszolgáló.
-
-
-
Köszi! Sikerült is beolvasni pár cellát, de ha éppen üres, attól kiborul. Ha pedig nem numerikus érték (szám) van az adott cellában, akkor nem a szöveget adja vissza, hanem egy számot. De hogy pl. a "teszt"-ből hogyan lesz 9 az nem teljesen világos.
Tuti valamit rosszul csinálok, de mit?
Ez a kód -
t-shirt
veterán
Szia!
Egy olyan kérdésem lenne, hogy a program által kiküldött string végére mindig tesz egy "\r\n" -t (új sor, előre ugrás). Valahogy megoldható, hogy ezeket ne küldje csak a string-et?
A program igazából jól működik csak valami gondja van a vezérlőnek és próbáljuk kizárni a lehetséges hibákat hátha ez segítene.
-
joysefke
veterán
Ahogy fent írtam, nem ismerem a SerialPortot, de ez a SerialPort.ReadLine() -a nevéből ítélve
- blokkol nem? Innentől kezdve a thread amihez hozzá van kötve IO-limitált.
kódodnál nem azért nem fogja feleslegesen terhelni a CPU-t, mert áttetted a futását egy másik szálra
igen ezzel tisztában vagyok -
Keem1
veterán
És valóban! Hálás köszönet!
Már csak érdekességből kérdezem: mi az a két bájt, amit kitömörítéskor le kell szedni, betömörítéskor meg hozzá kell biggyeszteni?
Alapvetően a webszerver esetén is megvan, de egyrészt a JSON forrása eltérő is lehet, és ott nem biztos, hogy a HTTP-ben történik a tömörítés, másrészt a kliens által visszaküldött anyagot is tömöríteni kell.
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Apple MacBook
- Egyre csak fejlődik az AI, emberek tízezreit rúgja majd ki a BT
- Media Player Classic és Home Cinema (MPC-HC)
- iPhone-t használók OFF topikja
- Futás, futópályák
- Milyen billentyűzetet vegyek?
- Hardcore café
- Lexus, Toyota topik
- Zalaegerszeg és környéke adok-veszek beszélgetek
- iPhone topik
- További aktív témák...
- BESZÁMÍTÁS! Gigabyte B760M i7 12700K 16GB DDR4 512GB SSD RX 6700 XT 12GB Rampage SHIVA Enermax 750W
- Azonnali készpénzes félkonfig / félgép felvásárlás személyesen / csomagküldéssel korrekt áron
- AKCIÓ! Apple MacBook PRO 15" 2018 i9 32GB 500GB 560X 4GB notebook garanciával hibátlan működéssel
- Samsung Galaxy A40 64GB, Kártyafüggetlen, 1 Év Garanciával
- AKCIÓ! MSI B450M R5 5600X 32GB DDR4 512GB SSD RTX 3060 12GB Rampage SHIVA Zalman 600W
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged