-
IT café
Új hozzászólás Aktív témák
-
ArchElf
addikt
válasz MasterDeeJay #5911 üzenetére
Hali - én commandline-ból csinálnám meg:
@ECHO OFF
SET WKSLIST=computers.txt
SET DDIR=\distdir\
SET SDIR=c:\srcdir\
SET SFILE=srcfile.exe
SET LOG=c:\temp\disribution.log
@ECHO DATE /T > %LOG%
@ECHO TIME /T >> %LOG%
@ECHO %WKSLIST% >> %LOG%
@ECHO %DDIR% >> %LOG%
@ECHO %SDIR% >> %LOG%
@ECHO %SFILE% >> %LOG%
FOR /F "tokens=*" %%i IN (%WKSLIST%) DO (
PING -n 1 -w 100 %%i >nul 2>&1
IF NOT ERRORLEVEL 1 (
ECHO Computer is available: %%i
NET USE Q: /DELETE >nul 2>&1
NET USE Q: \\%%i\C$ >nul 2>&1
IF EXIST "Q:%DDIR%" (
ECHO Folder is found at %%i
) ELSE (
ECHO Folder is not found at %%i
MKDIR "Q:%DDIR%" >nul 2>&1
)
ECHO Copying file to %%i
COPY "%SDIR%%SFILE%" "Q:%DDIR%" /Y >nul 2>&1
ECHO Starting executable at %%i
REM WMISTART "%DDIR%%SFILE%"
@ECHO + %%i >> %LOG%
) ELSE (
ECHO Computer is not available: %%i
@ECHO ! %%i >> %LOG%
)
)Amit nem kell csinálnod az a
WMISTART "%DDIR%%SFILE%"
Ez lehet c# de akár vbs is. De asszem van erre valami MS (sysinternals) tool is...AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
válasz MasterDeeJay #5913 üzenetére
Igen - egyet pinget és max 100 ms-et vár a válaszra (ha hálózati vagy lokális I/O akadás van, akkor a 100 ms kevés lehet), de mivel logol utólag lehet ellenőrizni. Ha van ping, de nincs c$ az elég ritka együttállás. Ja és nem .bat, hanem .cmd - erre tessék ügyelni!
Amúgy én nem c#-oznék, ha nem muszáj. Minek meghíni mindig a cmd-t? Amúgy ping van c#-ban is, nem kell külső programot hívogatni. De egyszerűen csinálhatsz egy saját c# port scan-t csatlakozás előtt (gyorsabb és megbízhatóbb, mint a ping), ami csak a a tcp/445 nyitva levését ellenőrzi le.AE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
válasz MasterDeeJay #5915 üzenetére
Ez VB.NET, vagy VB6?
KAJA??? WTF
BTW hasonlót én is csináltam (netbios file scanner), csak végül sikerült multithread-esre elkészíteni. Sok szívás volt, főleg, hogy a C#-os WMI wrapper nem túl megbízható és nem is túl barátságos (főleg akkor szívás, ha wmi művelet közben állítják le a távoli gépet).
AE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
válasz MasterDeeJay #5917 üzenetére
Vízforralóhoz ide nézz be, és hétfőre már meglesz a kikapcsológomb is
Ha "neves" gyártótól van a gép (pl. dell, hp), akkor a biost tudod manipulálni WMI-ből is
AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
martonx
veterán
-
amargo
addikt
válasz MasterDeeJay #6194 üzenetére
Ha nem telepíthetsz rá management agent
Primitív, hogy ping-ed, de más is ezt fogja csinálni..
Ping class
Van callback függvénye.
Viszont a gépen be kell állítani, hogy válaszoljon.Esetleg primitív ötletek:
file share-t végig nézni, de ehhez is beállítás kell a gazda gépen.
Esetleg a dhcp címtárat nézegetni.“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!”
-
amargo
addikt
válasz MasterDeeJay #6198 üzenetére
"Lényege hogy aszinkron csinál pinget, nem kell megvárni az eredményt hanem egyszerre többet csinált több szálon."
Parallel is végezhetnéd ezt a folyamatot, az async pattern a responzivitásért felel.
Tehát az aszinkron az aszinkron nem többszálú. pl PLINQ
Az Async CTP egy nyelvi segítség, hogy megjelölheted a metódusaidat - persze ez sem teljes megfogalmazás.“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!”
-
opr
veterán
válasz MasterDeeJay #10562 üzenetére
Így hirtelen pár gondolat, aztán ha van itt nálam okosabb ember, majd meghazudtol
- Tűzfafat nyitni mindenképpen kell, hacsak nincs olyan port, ami be van állítva úgy, hogy minden átmehet rajta. (A legtöbb tűzfal program szitnen blokkol, még az alap winfosos is)
- Ha van ilyen, akkor annyi a dolgod, hogy a forgalmat azon a porton tolod át.
- Ezen felül mindenképpen szükséged lesz egy fix ip-re, vagy ddns-szolgáltatásra, vagy ha valami fix ip-s központi szerveren viszed át, akkor valami ID-alapú azonosításra, ami alapján megkapod a túloldal címét, ahova csatlakozni fogsz és mehet a p2p kommunikáció."Programozó vagyok. Ez azt jelenti, hogy amit leírok, megtörténik." :D “The only valid measurement of code quality is What-The-F**ks/Minute.” - Robert Martin
-
biker
nagyúr
válasz MasterDeeJay #10562 üzenetére
A tw a 80-as porton dolgozik, azért nem kell tűzfalat buhetálni
Elektromos autó töltő berendezések | Mesterséges növényvilágítás | Mai ajánlatunk: www.gerisoft.hu | www.e-autotoltokabel.hu | www.agrar-vilagitas.hu |
-
válasz MasterDeeJay #10562 üzenetére
"Távoli asztali programot szeretnék írni visual studio-ban.": én lebeszélnélek róla, felesleges feltalálni a melegvizet.
a natolással az a gond, hogy befelé menet küzdős. tehát konfigurálni kell, ezt akarod elkerülni.
kifelé menet viszont általában semmi nincs, tehát csak annyi a megoldás, hogy a távoli asztalhoz úgy férj hozzá, hogy minden kapcsolat kifelé megy a natok mögül. ehhez kell egy szerver, amit neked kell biztosítani, ahova bejelentkezhetnek ezek a kliensek.ha úgyis telepíteni kell programot a gépekre, akkor inkább virtuális magánhálózatot telepíts oda, és akkor nem kell programot írni, csak felkonfigurálni a vpn-t, és azon keresztül meglévő eszközöket használhatsz.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
opr
veterán
válasz MasterDeeJay #11837 üzenetére
Hat, nyelvfuggetlenul gondolkodva:
Gondolom van valami rule-set, ami alapjan a hoszabbik stringbol egyertelmuen meghatarozhato a rovidebbik string egy definitiv, teljesen egyedi resze (filenev-mappanev).
Ha ilyened nincs, akkor a problemad csak sacc/kb szintre oldhato meg, mert tele leszel false positive-al.Ilyen rule-ra pelda mondjuk ez:
C_20151007_0701_T_TESZT_HUG00001465560Erre En igy elso blikkre a kovetkezo rule-okat tudnam mondani:
- Eldobjuk az elso X karaktert, ha mindig ugyanolyan hosszu, igy kijon, hogy: T_TESZT_HUG00001465560, (ha a vege is fix hosszu, akkor azt is eldobjuk) ezutan _ alapon splittelunk, elso kettot figyelembe vesszuk. Mappanevet hasonloan. Ezutan ha az elso string (T) egyezik a mappa elso n betujevel (esetunkben egy, mert siman egy T van), a masodik string pedig egy az egyben egyezik, akkor megtalaltuk a mappat, masolunk, egyebkent megyunk tovabb a mappak listajan.
- Elso karaktert eldobjuk, utana megkeressuk az elso "betu" karaktert. Innentol lasd elso pelda.
- Ha a filenev elejenek a hossza valtozo, de a vegen a kod mindig adott mennyisegu karaktert tartalmaz, akkor hatulrol elorefele megyunk a fenti logika szerintIgy hirtelen ennyi.
Annyi, hogy mivel fileok es mappakrol van szo, valszeg a mappak eseten ertelmezheto abc-sorrend lesz, (file-ok eseten a kod miatt nem biztos, passz) tehat felesleges mindig vegigmenni a teljes listan, ha nincs talalat, nincs es kesz (ezt illik logolni), illetve en nem is tesztelnek mindket stringre egyszerre, hanem a masodikra egyezest csak akkor neznek, ha mar az elsore van.[ Szerkesztve ]
"Programozó vagyok. Ez azt jelenti, hogy amit leírok, megtörténik." :D “The only valid measurement of code quality is What-The-F**ks/Minute.” - Robert Martin
-
Zalanius
tag
válasz MasterDeeJay #11982 üzenetére
Kezdésnek például itt nézz körül: SqlDataReader, MS Docs (a jobb felső sarok környékén lehet C# / VB.net között kapcsolgatni a példák kódját). Hasznos lehet ez is: [link].
Nincs igazán szükség conn.Close()-ra, ha Using blokkot írsz hozzá. A using megoldja a Dispose() hívást, ami pedig Close()-t hív egyebek mellett. Jól gondolod, nem kell minden Execute*** előtt connect, egy connection blokkjában több command is elfér. (Ha aztán ezek között egymásra épülő módosítások is vannak, már a Transaction témára is érdemes ránézni.)
[ Szerkesztve ]
--= Zalán =--
-
sztanozs
veterán
válasz MasterDeeJay #14315 üzenetére
rowselect-nél ez by design így megy. csak kerülőutat tudsz csinálni magadnak (pl másik shortcut, submenu, vagy duplakattintásra cella másolás)
Esetleg, ha RowHeaderSelect-et állítasz be SelectionMode-nak és a ClipboardCopyMode-nak pedig EnableWithoutHeaderText-et, akkor látni fogod, melyik sorban állsz, de nem másolja az első cellát is.
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
fatal`
titán
válasz MasterDeeJay #18605 üzenetére
Gondolom már OpenXML excel (xlsx). Használd az OpenXML SDK-t, ne oledb-t.
-
coco2
őstag
válasz MasterDeeJay #18605 üzenetére
Milyen típusúak azok az adatok? Ha szövegre konvertálni lehetséges a tartalmat, exportáld csv-be, dolgozd fel úgy, és ha vissza kell küldeni, importálod csv-ből. Sokkal egyszerűbb így dolgozni fel, mint direktbe drótozni, aztán rimánkodni, éppen jó lesz-e vagy sem.
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
-
coco2
őstag
válasz MasterDeeJay #18608 üzenetére
A class Microsoft.VisualBasic.FileIO.TextFieldParser, ami oszlop nevek első sorban vannak, azokat pozíciónként feljegyzed, név ütközés nem para. Stringeket fogsz kapni, információ típust neked kell tudnod hozzá, konvertálod igény szerint.
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
-
sztanozs
veterán
válasz MasterDeeJay #18605 üzenetére
Alternativakent olvasd be ket korben:
Eloszor az elso 255 oszlopot, utana a kovetkezoket:Select * From [Sheet1$]
Select * From [Sheet1$IV:SP]JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
coco2
őstag
válasz MasterDeeJay #18613 üzenetére
Ha nem vagy nyuszi egyben húzni be ramba mindent, sok gigabyte csv mind befér a gépbe. 2023-at írunk. Field parsing-nak nem probléma a változó oszlop szám sem, bár az értelmezése a te feladatod lesz.
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
-
coco2
őstag
válasz MasterDeeJay #18632 üzenetére
Azt a csomagot én nem ismerem. Én field parserrel ettem fel ram-ba sok gigányi csv-t. Sosem figyeltem fel extra sebesség problémára.
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
-
sztanozs
veterán
válasz MasterDeeJay #18965 üzenetére
Legyen a frissitesi szerver read-only authenikalt felhasznalok szamara, es akkor a SYSTEM user is eleri a halozati meghajtot es nem kell bedrotozni a jogosultsagot.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Proxmox VE
- Bugok, problémák a PROHARDVER lapcsaládon
- MG4 menetpróba
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- OFF TOPIC 44 - Te mondd, hogy offtopic, a te hangod mélyebb!
- Milyen CPU léghűtést vegyek?
- Azonnali fotós kérdések órája
- Anime filmek és sorozatok
- Luck Dragon: Asszociációs játék. :)
- Autós topik
- További aktív témák...
- ÚJ Független Apple iPhone 15 128GB !!! 1éV nemzetközi APPLE GARANCiA
- ÚJ bontatlan aktiválatlan Apple iPhone 15 256GB !!! 1éV nemzetközi APPLE GARANCiA
- AKCIÓ Új Bontatlan 2023 MacBook Pro 16 M2 Pro 12/19 16GB/512GB Magyar billent Azonnal Átvehető Deák.
- ÚJ Független Apple iPhone 15 Plus 128GB és 256GB Black ! 1éV nemzetközi APPLE GARANCiA
- teljesen ÚJ bontatlan Apple iPhone 15 Pro 128GB !!! 1éV nemzetközi APPLE GARANCiA