Hirdetés
- Mobil flották
- Kicsinálja az S26 Ultra a fóliagyártókat
- OnePlus: Settle Down, nem megyünk sehova
- Kijavították az iPhone Air legfőbb hibáját
- Redmi Note 11 és 11S - biztos alapra jobb építeni
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- MIUI / HyperOS topik
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- iPhone topik
- Bemutatkozott a Poco X7 és X7 Pro
Új hozzászólás Aktív témák
-
Alu
senior tag
Sziasztok!
Készítettem egy Windows Forms App -ot, amivel egy ubuntu alapokon lévő "házi szerver pc" -t szeretnék néhány egyszerű funkcióval vezérelni/státuszt lekérdezni. Ezek a következők lennének:
- Szerver pc pingelése
- Wake on lan küldése a szerver pc -nek (mac alapján)
- Ssh -n keresztül bejelentkezés, illetve parancs küldés és fogadás (egyenlőre rsync és shutdown parancsok lennének)Addig eljutottam, hogy létrehoztam egy Win Form App -ot, elkészítettem a felhasználói felületet és megírtam az összes függvényt, ami a fenti funkciókhoz szükségesek. A funkciókat az UI -on lévő gombokkal lehet elindítani és a függvények logolják egy multiline text boxba, hogy milyen szekvenciák futottak le, vagy éppen milyen válasz jött vissza ssh -n. A program egész jól működik azzal a szépséghibával, hogy amíg a háttérben futnak a függvények, addig az UI teljesen megfagy. Ez nem is lenne akkora probléma, de van, hogy az rsync parancs hosszú percekig, akár egy óráig fut, mire megjön a report, hogy mit sikerült szinkronizálnia. Ennek orvoslására ki szeretném rendezni a függvényeket külön szálba, hogy legalább az asztalra le lehessen tenni az UI -t és ne "Nem válaszol" státuszba kerüljön, amikor véletlenül rákattintok. A kiszervezésnél addig jutottam, hogy létrehozom a párhuzamos szálat, de amint abból a szálból szeretnék egy a fő formon lévő komponensre (pl. label, button, stb.) hivatkozni vagy annak értéket beállítani, egyből "Szálak közötti művelet érvénytelen" hibát kapok. Ezt egy logolást végző függvénynél már sikerült feloldanom Invoke használatával, de egy buttonEnable beállításnál újra előjött.
A kérdésem az lenne, hogy ezt az Invoke -os megoldást minden egyes komponensnél el kell játszani vagy van erre valami egyszerűbb út, amire még nem sikerült rátalálnom?
Eddig jellemzően mikrokontrollereket programoztam C -ben, a Win Forms, C# és oop teljesen újak számomra, de nagy a motiváció.
Minden segítséget előre is köszönök!
Ú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!
- Kerékpárosok, bringások ide!
- Zalaegerszeg és környéke adok-veszek beszélgetek
- Forza sorozat (Horizon/Motorsport)
- Mobil flották
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Autós topik
- Hobby elektronika
- Suzuki topik
- Melyik tápegységet vegyem?
- Kicsinálja az S26 Ultra a fóliagyártókat
- További aktív témák...
- 15.gen! Intel Core ULTRA 9 285K (24mag!) +16-32GB DDR5 +hűtött VRM-es Z890 lap! GAR/SZÁMLA (nevedre)
- Akko, Gateron, Haimu x Geon kapcsolók
- Szép! Lenovo ThinkPad X1 Yoga G6 x360 Érintős Hajtogatós Laptop Tab 14" -50% i5-1135G7 16/256 +Toll
- Samsung Galaxy Tab S10 Ultra 256 GB újszerű állapot
- GamerPC RX 9070/7700X/32GB DDR5/1TB M2
- Dell Latitude 3420 - i5 1135G7 ,16GB RAM, SSD, jó akku, EU bill., számla, 6 hó gar
- Amazfit GTR Mini okos óra
- Samsung Galaxy S24 FE 128GB, Kártyafüggetlen, 1 Év Garanciával
- 170 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4090
- Samsung Galaxy S25 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs


