Új hozzászólás Aktív témák
-
martonx
veterán
Nem kell ide fájl küldés, ennyi az egész:
</head>
<SCRIPT Language="VBScript">
Sub RunScript
Msgbox comments.innerhtml
End Sub
</SCRIPT>
<body>
<TEXTAREA NAME="comments" COLS=40 ROWS=6></TEXTAREA>
<input id=runbutton class="button" type="button" value="Run Button" name="run_button" onClick="RunScript">
</body>Egyszerű, mint egy faék.
-
ArchElf
addikt
Ez működőképesnek tűnik.
Load-ban be kell állítani a fájlnevet (ha nem textboxból kell beolvasni), Megnyitni a fált írás/olvasásra, le kell kérdni a rekordok számát, be kell állítani az első rekordot (nem kell beszárni a fájl).
Bottonokban:
- navigálás: gondolom neked is egyszerű (index változót kell növelni csökkenteni a 0 és a darabszám-1 között - vagy 1 és darabszám között??? már nem emlékszem)
- editre: ugyanaz van, mint a GET (csak PUT-tal): beállítani a rekordszámot, a textboxokból legenerálni a típust, felülírni vele a rekordot az adott helyen.
- mentésre: bezárni a fájlt és újranyitni
- törlésre:
legegyszerűbb az utolsó elemet a fájl végéről bemásolni a törölt helyére és a rekordhosszal csökkenteni a fájl hosszát.
bonyolultabban minden rekordot a törölt rekod után eggyel előrébb írni, majd csökkenteni a fájl hosszát egy rekordhosszal.Nincs sajna VB6-om, csak magyarázni tudok...
AE
-
opr
nagyúr
-
szóval a fájlkezelést tanultuk és a feladat a következő lenne:
egy ksi adatbázist kellene létrehozni egy rekord típusú fájlban. a fáljlban egy személyről 3 adatot kellene tárolni. ezen adatok eltárolásához létrehoztunk egy elrendezést. 3 textboxban a kívánt adatok vannak, a 4.ben kellene megjelennie annak, hogy hányadik rekordról van szó. a textboxok egyben szolgálnak az adatok bevitelére és egjelenítésére is.
van 4 command button. egy előre és egy hátra funkciójú, ami a rekordok közötti navigációra szolgál. egy mentés nevű, ami a 3 textbox tartalmát beírja egy rekordba a fájlban, és egy töröl, ami az épp kiválasztott rekordot törli ki.
remélem érthető...
a kódból jelenleg ennyi van meg:Option Explicit
Option Base 1
Private Type hallgato
nev As String * 30
neptun As String * 6
kp As Single
End Type
Dim h As hallgato
Dim f As Integer
Dim r As Integer
Dim fnev As String
Dim tmpfile As StringPrivate Function darab() As Integer
f = FreeFile
Open fnev For Random Access Read As #f Len = Len(h)
darab = LOF(f) / Len(h)
Close #fEnd Function
Public Sub kiirat(rekordsz As Integer)
Dim db As Integer
db = darab
If db = 0 Then
Label4.Caption = "No data"
Call tiszta
Else
Label4.Caption = Str(rekordsz) + "/" + Str(db)
f = FreeFile
Open fnev For Random Access Read As #f Len = Len(h)
Get #f, rekordsz, h
textbox1.Text = h.nev
textbox2.Text = h.neptun
textbox3.Text = Str(h.kp)
End IfEnd Sub
Public Sub tiszta()
Text1.Text = "Maximum 30 karakter"
Text2.Text = "NEPTUN"
Text3.Text = "Kp"End Sub
remélem tud valaki segíteni
-
martonx
veterán
put/get úristen ez VB6 lesz.
És ezt oktatják az iskolában??? Eldobom az agyamat. Szerencsétlen diákok. Komolyan nem értem, akkor már miért nem VBScriptet oktatnak? Az legalább tartós tudást ad, ha más nem, makró programozásnál lehet hasznosítani.
Na de VB6 tudással mit tudsz kezdeni 2011-ben?
-
martonx
veterán
Szia!
Elvileg működnie kellene az alábbi módszernek (csak .hta-val próbáltam ki, ott működik):
1. adj name attribútumot a textarea-dnak mondjuk name="teszt"
2. ezután a name objektumot már meg kellene, hogy találja a vbscript:strMernemMukodsz = teszt.innerhtml
msgbox(strMernemMukodsz) -
opr
nagyúr
Üdv!
Lenne egy Vbscript-el kapcsolatos kérdésem (kikészít, hátha nektek van valami használható ötletetek
)
szval: a dolog egyszerű, van egy html file, van benne egy textarea, meg egy gomb. (dojo-t hasznalunk)
A gomb nyilván a scriptet futtatja. A lényeg: szeretném átadni a textarea-ban lévő cuccost egy változónak, mondjuk az strMernemMukodsz-nek.
A kód dióhéjban:
html kód:
<textarea dojoType="dijit.form.SimpleTextarea" type="text" id="asd" name="asd" cols="10" rows="10">
</textarea><button dojoType="dijit.form.Button" class="StartButton" id="TEST" onClick="RunScript('scripts/asd/asd.vbs', dijit.byId('asd').value, '', '', '', '', '', '', '', '', '')">
<b>GO</b>
</button>a script kódja:
Option ExplicitIf WScript.Arguments.Count > 0 Then
strMernemMukodsz = WScript.Arguments(0)
Else
MsgBox ("nyetparameter")
End IfMsgBox strMernemMukodsz
a probléma: elszáll object required-el, hogy az a fos nem object. Ami fura, mert textbox-al megy.
előre is thx a helpet, már cseppfolyós az agyam...
-
ArchElf
addikt
Van valami obfuscator hozzá, de szerintem csak annyit ér, mint a Java-s társai.
Esetleg le lehet védeni mondjuk DLL-eket: betitkosítani, kódból visszafejteni és memóriából betölteni, de én mondjuk még nem csináltam ilyet.
Egy jó kis agymenés a stackoverflow-n a témában: linkAE
-
charun
csendes tag
Rutin az hogy valamilyen tevékenységet különösebb előkészület, felkészülés nélkül nélkül el tudok végezni
Most komolyan nehogy félreértsd ne akarlak cseszegetni
, de a programozás alapjainak elsajátítására nem igazán az a legjob ha egy fórumon alapvető dolgokat (ami bármely alap programozási kézikönyv elején megtalálható) kérdezgetsz.
peace
-
sonar
addikt
Hú skacok ma nagyon megszivatott egy probléma. (vb6)
Olvasom be a sorokat
Input #iFile, sLine
De ha van a sorban egy vessző akkor csak addig olvassa be. Létezik erre vmi kapcsoló vagy paraméter, hogy ne így csinálja hanem crlf-ig olvassa be a sort? -
martonx
veterán
Nade most komolyan. Szerinted a dataset az micsoda???
Az nem tűnt fel, hogy a datasetben is tábla van? Fogd fel nyugodtan úgy mint egy memóriában lévő "belső" adatbázist.
Azaz neked a datasettel kell foglalkoznod csak, és kizárólag. Abból kiválogatod amit akarsz, azokból összeállítasz valamit, és a végeredményt kinyomtatod. Ennyi.
Egyébként, ha már van egy ilyen programod, miért nem ezt használod adatfelvitelre is? Nem sokkal elegánsabb lenne, mint az accesst megnyitogatni minden adat módosításhoz?
-
Kafi
csendes tag
válasz
martonx #1279 üzenetére
Szia!
Dataset-el létrehozom az adat forrását, kapcsolatát. Ez megy.
Datagridview-t lerakom kiválasztom az adatforrást és szépen be is rakja az access táblázatomat. Ez is megy.
De nem ezt szeretném elérni, megpróbálom kicsit bővebben kifejteni:
Programom:
Egy mdb fájlban tárolom az adatokat. Ezeket előre megszerkesztem és időnként hozzáírok majd Office Access-ben. Van kb. 5 alkatrésztípus ezeknek kb. 8 paramétere (neve, értékek = szám). A programban nem szeretném se szerkeszteni se megjeleníteni is csak a nevét legfeljebb.
Így gondoltam a programom:
-Indítás után betöltöm az adatbázist egy "belső" adatbázisba. (azért mert a továbbiakban ebből a belső adatbázisból dolgozom és nem az mdb-ből)
-Összeválogatom a megfelelő alkatrészkombinációt. Különbözö alkatrészek értékei között matematikai műveletek vannak. Az összeválogatás egy vizuális felületen történik vagy combobox vagy treeview stb.
-Kinyomtatom pdf-be a végeredményt. Kb.: Név + Alkatrész(1).magasság+Alkatrész(2).magasság*1,5Ami nem megy:
Van: access mdb fájl pl.:
Alkatrész nev; Magasság; Szélesség
asztal; 100; 200
szék; 150, 250Van: "belső" adatbázisom:
Alkatrész(1).Nev: asztal
Alkatrész(1).Magasság: 100
Alkatrész(1).Szélesség: 250
stb.Vagyis mdb első sora -> alkatrész(1)-be
Szeretném induláskor áttölteni az mdb tábláját a saját változóimba és ezt használni utána. (nem megjeleníteni, nem szerkeszteni csak áttölteni)
Eddig egy megoldással találkoztam ami működik, de ne szép:
For Next ciklusban végigmenni a táblázat sorain (0->Row-1) és:
txtAlkatrészNév.DataBindings.Add("Text", AlkatrészTable, "Alkatrész Név")
Alkatrész(Row).Név = txtAlkatrészNév.Text
a textbox invisibleKöszönöm!
-
martonx
veterán
Ugye dataset-et használsz? És varázslókkal raktad össze?
Ha így van, akkor nem értem, hogy mi a probléma? Az adatbázisból akarsz adatokat kiolvasni, és megjeleníteni valahol, vagy az adatbázisba akarsz új adatokat betölteni?
Datagridview-t javaslom, mint legegyszerűbb megoldás, de tőlem textboxozhatsz is. Mindkét megoldás egy szimpla drag and drop.
Nem értem hol itt a probléma?
-
Kafi
csendes tag
válasz
martonx #1277 üzenetére
Szia!
Access adatbázis nekem a legjobb megoldás. Az adatbázist ki tudom iratni textboxba, stb.
Úgy szeretném megoldani, hogy a program indulásakor használom csak az adatbázist és ekkor betöltöm az összes adatot. Van köztük text és szám is. Milyen utasítással tudom ezt megtenni?
Elvben valami ilyenre gondoltam: (Connection, Adapter, Table rész az megy)
adat(1) = ("Text", CustomersTable, "FirstName")
Köszönöm! -
martonx
veterán
Én az sql compactot használom, de az Access adatbázis is megteszi. Itt van néhány videó:
http://msdn.microsoft.com/hu-hu/beginner/dd435692%28en-us%29.aspx
http://msdn.microsoft.com/en-us/vbasic/bb466226.aspx?wt.slv=topsectionimg
http://windowsclient.net/learn/videos.aspxHa nagyon nem megy, akkor persze segítek én is.
-
Kafi
csendes tag
válasz
martonx #1275 üzenetére
Szia!
Most ott tartok, hogy sikerült megoldanom, % jelet használok szeparátornak és split-el szétválasztom, ahogy javasoltad. Ez működik is. De szívesen kipróbálnám az adatbázis kezelést is. Csak sajnos ehhez nem értek, de szívesen foglalkozok vele. Annyira nem értek, hozzá, hogy el sem tudok indulni. Hol találom ezt a VB-ben? Gondolom többfajta adatbázis létezik, melyiket javasolnád nekem? Ha tudnál mondani pár ötletet, támpontot akkor már keresgélek is a neten róla. Köszönöm a segítségedet! -
martonx
veterán
Szia!
Ezt már írtam fentebb, hogy a VB6-os Put helyett VB.Net-ben FilePut parancsot lehet használni. És akkor pont ugyanazt a viselkedést kapod, mint VB6-ban.
Másrészt a Put sem csinál mást mint, hogy berak egy elválasztó karaktert az egyes stringek közé. Csak épp a binarywriternél ezt neked kell beszúrnod, a FilePut meg magától beszúr egy /r-t.
Szerintem egyébként mára annyira elterjedtek az adatbázisok, hogy semmi értelme text fájlokban adatot tárolni. Ugyanezt a feladatot, amivel küzdesz egy adatbázis használatával VB.Netben pusztán varázslókkal össze tudod kattintgatni 5 perc alatt, gyorsabb lesz a futása, és sokkal szebb a végeredmény.
-
Kafi
csendes tag
válasz
martonx #1273 üzenetére
(Elnézést kérek ha színvonaltalanul tettem fel a kérdést, én egy amatőr programozó lennék az életeben ipari gépeket "gyógyítok")
Szeparátor karakter eszembe jutott csak a vessző nem igazán tetszik mert azt a felhasználó is könnyen beviheti és akkor szétcsúszik az adatblokkom. Esetleg egy ritkán használt karakter jobb lenne.
Valójában ezen a linken: [itt] van egy VB6-os példaalkalmazás ezt szerettem volna VB2005-ben is használni de nem tudom átírni. Ezek szerint ez nem használható az újabb VB-ben?
Egy paranccsal kiírom a komplett blokkot és egy másikkal beolvasom.Ha nincs más akkor megpróbálom elválasztó karakterekkel, de ez egy kicsit "fapadosnak" tűnik ezek után nekem.
Köszönöm! -
martonx
veterán
Öööö, most majdnem mondtam egy-két keresetlen szót a kérdés színvonaláról.
Javasolt megoldás, hogy valamit szúrsz az osztály propertyk közé. Mondjuk pontosvesszőt, vagy vesszőt. Ezt hívják csv-nek, jééé
Visszaolvasáskor pedig split-eled a kapott stringet, ahol az elválasztó jel a vessző, vagy pontosvessző lesz.
-
Kafi
csendes tag
válasz
martonx #1271 üzenetére
Működik (bár két Dim lemaradt). Gondom:
Adatok(0).Nev = "Gizi"
Adatok(0).Eletkor = 21
Adatok(0).Cim = "Szomszed sarok"
Kiírom fájlba: binary_writer.Write(Adatok(0).Nev & Adatok(0).Eletkor & Adatok(0).Cim)
Visszaolvasom:msg = readBinary.ReadString()
Akkor a msg tartalma: Gizi21Szomszed utca.
Így hogyan tudom szétválogatni ezeket az adatokat Név-re,Cim-re...Vagy hogyan szokták ezt megoldani?
-
Kafi
csendes tag
válasz
martonx #1269 üzenetére
Valahogy ez megy VB6-ban és Get #1, , Adatok(0)-val meg visszaolvastam. Persze a tömböt deklaráltam (Type End Type köz). De most ez nem is érdekes.
Ez a sor binary_writer.Write(Adatok(0).Nev & Adatok(0).Cim) működni látszik.
És hogy tudom visszaolvasni?
= binary_reader. parancsot hogy használjam?
Köszönöm!! -
martonx
veterán
Nekem itt valami nem stimmel. Kizártnak tartom, hogy a VB6-os sorod így simán, ugyanazzal az osztály struktúrával binárisan működjön (kitalálja, hogy mia struktúra, azt egymás mellé rendezze, és úgy kiírja). Bár soha nem használatm VB6-ot, csak VBscriptet, meg VBA-t.
Másrészt a FilePut-ot VB.Net-ben is használhatod.
FilePut(filesorszám, Adatok(0).Nev & Adatok(0).Cim)
Visszatérve a példádra ennek is mennie kellene:
binary_writer.Write(Adatok(0).Nev & Adatok(0).Cim)
Az &-ben nem vagyok biztos, lehet, hogy + kell?
-
Kafi
csendes tag
Sziasztok!
VB2005. Van egy tömböm:
pl.: Adatok(10) és
Adatok(0).Név
Adatok(0).Cim
Szeretném kiírni egy bináris fájlba, mégpedig úgy, hogy egyszerre a komplett Adatok(0)-át Programrész:Using fs As New FileStream(File_name, FileMode.Create)
Dim binary_writer As New BinaryWriter(fs)
binary_writer.Write(Adatok(0)) -> ez igy nem megy nekem.
binary_writer.Close()
End UsingHogyan lehetne kiírni egyben a tömbnek azt a részét?
VB6-ban ez kb. így ment Put #1, , Adatok(0)
-
Atti1112
aktív tag
válasz
martonx #1265 üzenetére
Hali !
Köszi a segítségeteket ! Találtam egy progit: auto shutdown management.Tuti kis program,bőven van benne minden ,ami kell(het). Van benne user időlimit isÉn most vistát gyűrök,tudom váltsak win7-re,kösz nem
Volt szerencsém hozzá.Mindig visszateszem a vistát
( kb. 3 naponta pakolok fel rendszereket a gépemre,meg driver-okat,mindent szeretek kipróbálni
a boot szektor része a vinyónak szerintem már elvékonyodott
) Tinyxp-től a 64-es win7-ig mindent kipróbáltam már....Szerintem több időt látom a bootolást,mint az asztalt
Mégegyszer köszi a segítő szándékot !
Attila -
martonx
veterán
válasz
Atti1112 #1263 üzenetére
Amikor kiadták a kikapcsolás parancsot (EventsThreadShutdown eseménnyel tudod elkapni a kikapcsolást), akkor fogod és lemented egy fileba a hátralévő időt, és a státuszt - mondjuk 0, vagy 1.
Bekapcsoláskor automatikusan indulna a programod. És ha a megfelelő paramétereket találja, akkor nem csinál semmit, vagy standby-ba kapcsol, vagy mittudomén.
Egyébként erre nincs valami default windows funkció? Vagy nem készült már erre a célra program? Sokszor felesleges a spanyol viaszt kétszer feltalálni.
-
Atti1112
aktív tag
válasz
martonx #1256 üzenetére
Köszi a segítséget !
Esetleg még arra van egy tipped,hogy ha hamarabb kapcsolják ki a gépet mint 60 perc,(mondjuk 25 perc múlva) ,akkor a következő bekapcsoláskor még "tudja",hogy maradt 35 perc hátra ?
Egyébként a standby-be kapcsolódó gép jó ötlet,be tudom állítani,hogy visszatéréskor jelszót kérjen.Csak az a bökkenő,ha kikapcsolják a gépet,akkor meg nem fog kérni jelszót,mivel az meg úgy van beállítvaHa meg teszek azonnali "hideg" induláshoz is jelszót,akkor semmit nem csináltam. A lényeg az lenne,hogy ha a mama vigyáz a lurkókra délután,amíg hazaérek melóból,ne tudjanak több órát játszani csak ,mondjuk 1 órát.De hogy azt mikor kezdik az RND.Azért nem tudom pl. beállítani,hogy 17:00-18:00-ig,mert ha 17:55-re érnek haza,akkor csak 5 perc maradna játszani.
Azt meg lehetne e csinálni,hogy egy file-ba írok egy 0-át.Ha megtörtént a bekapcsolás akkor a file-ban lévő érték lenne mondjuk 1 és ezt el is mentené a vinyóra.Namost minden bekapcsolásnál ezzel indulna a gép,hogy megnézi a file-ban lévő értéket és ha ez nagyobb mint 0 akkor kiad egy shutdown parancsot.Én meg ,amikor este hazajövök,egyszerűen csökkentett módban indítanám a gépet és kitörölném a file-ból az 1-et és visszaírnám 0-ra.Ők még nem tudják,hogyan kell csökkentett módban indítani a gépet
Még egy kérdés : reggel standby-be hagyom a gépet,jelszó alapon (vagyis nem kér ha standby-ből tér vissza).Letelik majd délután az 1 óra ,a gép kap egy shutdown parancsot és amikor újra beakarják kapcsolni a lurkók,akkor már a "hideg" indítás miatt jelszót kérne.Ilyet lehet ?
Attila -
ArchElf
addikt
válasz
martonx #1261 üzenetére
Ops, bocs - winforms-ról valamiért a VB6 ugrott be...
Nemrég találtam egy viszonylag jó kördiagramos kódot a neten (amit egy kicsit a saját szájízem szerint módosítottam).AE
-
martonx
veterán
válasz
ArchElf #1258 üzenetére
Aha. Sosem tagadtam, hogy a winforms-os idők (beleértve VB6-ot és elődeit) kimaradtak az életemből.
Bár most pont lesz egy szakdolgozós ismerősöm, így egy picit megint bele kell majd mélyed nem. Főleg a Chart kontroltól félek
AE neked van tapasztalatod Chartok rajzolásáról Win Formsban? Ahogy nézem elég triviális, de félek lesz egy-két egyéni igény...
-
martonx
veterán
válasz
Atti1112 #1254 üzenetére
Szia!
Amit akarsz az egyszerű, kivéve hogy fogalmam sincs, hogy éred azt el, hogy egyik bekapcsoláskor kérjen jelszót a géped, másiknál meg már ne. Mert ez windows szinten működik, lehet hogy registry-t kellene ehhez állítgatni, vagy mittudomén.
Automatizálás feladatokhoz egyébkként a powershell 2.0-át (ez lehet alapból is tudna ilyet, mindig elképedek, hogy mennyi tudás van benne), vagy az AutoIt-t javasolnám VB6 helyett.
Persze az alap működéshez (automatikusan elindul, elszámol 60 percig, majd kikapcsol) bármilyen program nyelv jó, még VB6 is. Ez max 5 sornyi kódból megvan. A nagy kérdés, hogy utána hogy lehet megoldani a jelszavazást.
Még egy ötlet. Ne kikapcsoljon, csak álljon alvó/készenléti/hibernált módba a gép, ekkor a windows úgyis jelszót kér (ha a windows úgy van beállítva)
-
Kafi
csendes tag
válasz
martonx #1243 üzenetére
Közvetett módon, de segítettél. Váltottam VB2005-re (hirtelen ehhez találtam portable verziót ami nekem kell). Úgy tűnik ebben menni fog, most átírom a régi kódot az újra, közbe tanulom is. Rögtön egy kérdés: MDi Form-ot használok. Benne egy Formon van 3 gomb amivel kiválasztom, hogy a Form1,Form2,Form3 legyen látható. Ezek keret nélküli Formok. Próbáltam Visble True/False és Show/Hide-al. Az a gondom, hogy amikor kirakja a Formot akkor egy pillanatra bevillan a Form kerete. Miért van ez? (VB6-ban ezt nem tapasztaltam)
-
Atti1112
aktív tag
Sziasztok !
Szeretném,ha segítenétek ! Egy olyan progit szeretnék,ami a gépem bekapcsolása után (akkor még nem kérne jelszót), méri az eltelt időt és 60 perc múlva shutdown-olná a gépet és ezután már csak jelszóval engedne belépni ha újra bekapcsolják a gépet. Azt sem bánom ,ha valaki összedobna nekem egy ilyet.Vagy valami utat mutatna ,hogyan induljak el.A VB6-ban már írtam működő tetrisz programot,úgyhogy nem vagyok abszolút láma
Attila -
dany27
őstag
válasz
martonx #1251 üzenetére
nem, nem láncolt proxyt szeretnék hanem azt hogy egy adott oldalt egyszer az egyik proxyval majd utánna egy másikal nyisson meg utánna meg egy harmadikal és így tovább.
Am egy olyan kérdésem lenne hogy melyik modszerral nyissan meg a proxy IP-ket tartalmazó text filet ha annak minden sorában egy IP van. Tehát soronként szeretném oket beolvasni... objreader-el próbálkoztam de azzal csak readline illetve readtoend van. Legalábbis én nem találtam benn olyant hogy egy x-edik sort olvasson ki!
Előre is köszi!
-
-
Smach
csendes tag
Még egy kérdés...
Egy futtatható(exe) program a fejlesztő gépen tökéletesen szuperál, de egy másik gépen hibaüzenettel leáll:Run-time error '91': Object variable or With block variable not set
Ötletek?
-
Smach
csendes tag
Sziasztok!
VB6-tal programozgatok. A gondom a következő:
A kész progit a hordozhatóság érdekében exe fájlra fordítottam és készítettem egy telepítőt a Package and Deployment Wizard beépülő modullal. A szolgáltatás elvileg összeszed minden szükséges állományt az exe futtatásához.
Ha telepíteni próbálom, akkor hibaüzenetet dob fel, mégpedig:Invalid line in setup information file!
Section: Setup1 Files
@MDAC_TYP.EXE,$(AppPath),,,6.26.98 12:00:00 AM,8124720,4.71.1015.0Használta már valaki a Package and Deployment Wizard-ot? Mi lehet a gond?
Köszönöm előre is a segítséget. -
martonx
veterán
Fogalmam sincs, hogy lehet-e ilyet. Feltételezem, hogy nem a programozás részén múlik, és hogy nem lehet.
Hacsak nem tudsz olyan oldalakat, kvázi webszolgáltatásokat, melyeket eleve GET-tel megfelelő paraméterekkel meg tudsz hívni, és tovább dobnak a paraméterben megadott oldalra.
Ám ez még mindig csak egy proxy továbbítás, nem pedig újabb és újabb. -
dany27
őstag
nah jó ezt jól benéztem én nem a proxy beálításaira gondolok a gépnek, szóvel nem a registry kell nekem mert ott azt lehet. Hanem egy olyan progit szeretnék írni ami egy bizonyos proxy serveren keresztűl meghív egy oldalt majd ezek után egy másik proxyn keresztűl a következőt és így tovább....
-
dany27
őstag
hali
egy olyan programot szeretnék írni ami proxyval meghív egy bizonyos weboldalt majd újra csere majd újra meghívja az oldalt.
Az lenne a kérdésem hogy hogyan tudom cserélgetni a proxykat VB-vel??
Úgy tudom hogy valamit a registryben kell matatni... Vagy rosszúl tudom?Előre is köszi.
-
martonx
veterán
Ez esetben fingom sincs. Sose használtam VB6-ot, ocx-et sem. Csak ötleteltem.
Mondjuk a VB.NET-es tapasztalataim alapján, ha ez az ocx úgy működik, mint mondjuk egy dll, akkor azt a projekthez hozzáadáskor be kell tudnod állítanod, hogy relatív vagy fix útvonalról működjön.
Persze ezzel lehet, hogy nagy hülyeséget mondtam, de nincs kedvem egy 10 éve elavult technológiával komolyabban foglalkozni. Én a dll-eket így használom, ahogy fentebb írtam, ha ez segített, akkor örülök -
Kafi
csendes tag
válasz
martonx #1241 üzenetére
Szia!
Köszi a választ! Nos, az útvonallekérést azt meg tudom csinálni de a többit nem.
Jelenleg én így csinálom: kiválasztom komponensnek (ctrl+t) az ocx-et és akkor megjelenik az eszközök között a treeview iconja és beillesztem a formra. Exe-t csinálok belőle de az a gondom, hogy ezek után mindig onnan keresi ahonnan kiválasztottam. Hogy lehetne az útvonalat beilleszteni? Köszi! -
Kafi
csendes tag
Sziasztok!
VB6-ban programozom. Hogy lehetne ezt megcsinálni: használok egy ocx-t a programomhoz. Lefordítom és szeretném ezt a programot akárhonnan elindítani például úgy, hogy ez a ocx mindig az exe mellett van és onnan fut. Mivel van olyan gép amin én nem vagyok admin és azon pendrive-ról futtatnám ezért semmi "registry"-s megoldás nem jöhet szóba. Ez egy sima Treewiev eszköz. Vagy esetleg más ötlet ennek használatához is jól jönne.
Köszönöm segítségeteket! -
shev7
veterán
válasz
dani850430 #1238 üzenetére
tenyleg nem.
-
dani850430
csendes tag
Sziasztok! Kerestem a VB6 súgójában meg neten is, hogyan tudok faktoriálist számolni. Eddig mindenhol azt láttam, hogy egy ciklust kell irni rá, és azzal meg lehet oldani. Az lenne a kérdésem, hogy valóban nem létezik rá operátor közvetelnül, mint ahogy matek órán megszokta az ember a felkiáltójelet.
-
martonx
veterán
Miért nehezíted meg az életedet?
Első körben használj access adatbázist, és mindent varázslóval csinálj. Hidd el, 5 perc alatt össze tudsz rakni egy telefonkönyvet. Aztán, amikor már érted, hogy mit csinált a varázsló, akkor elkezdhetsz bonyolítani. Na de visszakanyarodva a legbonyolultabb megoldáshoz:
1. csinálsz egy csv fájl. Ennek a nevében is benne van, hogy comma separated, azaz alapesetben vesszővel szokták elválasztani a mezőket benne. Ez lehet pontosvessző, esetleg tabulátor is.
2. Nehogy elkezdj szövegfájl feldolgozó programot írni. Ennyi erővel C-ben is írhatnád, az még nehezebb lenne, még többet szopathatod magad vele. Javaslatom: használd a szövegfájlokhoz tartozó ODBC drivert. Ezzel már az ADO alapból fog tudni írni olvasni a szövegfájlodba.
Istenem, már megint más helyett guglizok, tessék egy link, ami tele van olyan oktató videókkal, amik neked kellenek, ahhoz, hogykiverd a fejedből a hülyeségeket.
-
dany27
őstag
válasz
martonx #1235 üzenetére
hello
Nah már megoldódott, de közben rájöttem hogy ez nekem felesleges....
Nem kell nekem SQL hanem fogom és letárolom egy külső fileba(pl .dat vagy valami hasonló) csak annyi különbséggel hogy elkódolom valamilyen uton módon, ezt még majd kitalálom most egyenlőre egy CSV olvasó illetve író rutint kell össze hoznom. Ha megy jól a fájlba írás csak éppen nem lesz elkódolva akkor majd utánna megírom hozzá az encryptáló illetve decryptáló rutint is.Csak azt nem tudom hogy mit használjak az oszlopok elválasztására..
Van rá valami dolog amit szoktak használni vagy elég ha beteszek egy speckó karaktert az ASCII táblából(azért gondoltam valami speckora, mert azt nem tudja bevinni a juzer billről... pl.: ETX) és azt figyelem az olvasáskor illetve íráskor meg azt szúrom be az oszlopok közé?
Egyenlőre egy sima DVD katalógust szeretnék megírni a saját számíze szerint aztán utánna valami nagyobb project!(Gyakorlásnak ez tökéletesen megfelel nekem, arra hogy jobban megismerjem a VB.NET parancsait.)
Előre is kössz a válaszokat!
-
martonx
veterán
ööö, ránézésre nincs user és password a connection stringedben
Ez miatt biztos nem fogsz tudni kapcsolódni, de persze emellett még ezer más oka is lehet a kudarcnak.
Amúgy mdf-et írtál, a connection stringben mdb van, és egyik sem MySQL adatbázis
A helyes connection string elkészítésének van egy pofonegyszerű módja: Varázslót használsz. Aztán, ha mégis kézzel kódban akarod piszkálni az adatbázist, akkor csak kinézed a varázslóból az összeállított connection stringet.
-
dany27
őstag
sziasztok
próbálokozok kapcsolódni MYSQL adatbázishoz(mdf file)
De valamiért az írja ki hogy érvénytelen jogosultság leírás(cn.open() sorra mondja ezt)
A kód:
Imports System.Data.OleDb
Public Class Form1
Dim cn As New OleDb.OleDbConnection
Dim str As String = "Provider=SQLOLEDB;Data Source=D:\DVD\DB\db.mdb"
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
cn.ConnectionString = str
cn.Open()
End Sub
End ClassElőre is kössz a debugolást!
-
martonx
veterán
válasz
dani850430 #1232 üzenetére
Oké, nincs is vele baj. Én a mai napig is rendszeresen VBscriptben programozok.
.Net-et csak komolyabb alkalmazások esetén veszem elő.
Viszont rendszeresen elcsodálkozok a VB6 életén. Így 2010-ben. -
dani850430
csendes tag
Igen Vb6-ot nyúzom. Tuldképpen nem vagyok annyira kezdő, csak az történt, hogy a múlt héten elveszett egy pár mappám, és volt egy programom, amit nyár elején irtam, és elveszett. És most újra kellett irnom. De végre kész van és még talán jobb is lett mint az első. BMEre járok, gépészmérnök szakra; és előző félévben az egyik tárgyam kapcsán újra elő kellett ásnom VBt
Akkor sikerült irnom egy egész pofás kis tengely méretező progit, ami access adatbázisből szedett adatokat. El vagyok VB6tal, egyenlőre elég. Amire nekem kell arra tökéletesen megfele. Nem tudom, hogy akarok e komolyabban programozni... Ez amolyan hasznos időtöltés. -
martonx
veterán
válasz
dani850430 #1230 üzenetére
Jól látom, hogy VB6-tal próbálkozol?
-
martonx
veterán
válasz
dani850430 #1228 üzenetére
Szia!
Ha jól értelek, a list1 indexét kell lekérned (mondjuk selection changed eseménynél), és list2 indexét egyenlővé tenned. Esetleg valami kódot mellékelnél, hogy ne csak a levegőbe beszéljek?
-
dani850430
csendes tag
Sziasztok! Azt hiszem egy nagyon primitív kérdésem van, de csak nem régen kezdtem bele a progaromzgatásba. Szóval a problémám: van két változom (x,y) és köztük van egy matematikai függvény kapcsalat (pl x=y^2). Az x értékem egy adott intervallumban mozog (1től 20). Egy parancsgomba hatására a két változom bekerül egy egy listába. Azt szeretném elérni, hogy ha a list1en klikkelek, kijelölök egy elemet, akkor a list2ben ugyanaz indexű elem is jelölödjön ki.
-
martonx
veterán
válasz
visityu #1224 üzenetére
No ma rászántam azt az egy percet, és a szépség kedvéért nem egy soros lett, és az 1 percből is 5 lett végül. Íme a kód:
Sub osszead()
On Error Resume Next
TextBox3.Value = CDbl(TextBox1.Value) + CDbl(TextBox2.Value)
End SubFejből is egész jól közelítettem a triviális megoldást. Ez annyival több, hogy hibát is kezel. Az osszead rutint meghívod textbox1 és 2 change eseményekor. Egy köszönöm jól esne
-
martonx
veterán
válasz
visityu #1224 üzenetére
Mivel a problémád az, hogy két számot kell összeadni a legtriviálisabb megoldás valami ilyesmi fejből, szóval nem biztos hogy pont ez lesz:
textbox3.value = textbox1.value + textbox2.value
esetleg a textbox value-kat int-é alakítod mielőtt összeadod. Na ugye, hogy milyen triviális? Micsoda meglepetés, hogy két változót össze kell adni, nem?
Ha ez az ötletindító 1 sorom nem volt elég, akkor küldd el priviben az exceled, és ígérem rászánom azt az egy percet, hogy belejavítsak a kódodba
-
visityu
csendes tag
válasz
martonx #1222 üzenetére
Hát elég sokszor 1 percet rááldoztam már de nem sikerült, pedig tuti nem bonyolult.
Amit nekem sikerült összehozni, az annyit csinál, hogy az excelbe a megfelelő cellába beírja. De ott sem a korrekt összeget, hanem egymás után a két értéket.
Pl.: az egyik textbox értéke: 0.8, a másiké:-0.2. Viszon 0.6 hehyett azt írja be, hogy:0.8-0.2
Az meg nekem nem jó.
Azt sem sikerült még megoldanom, hogy ezt az eredményt visszaírja a 3. szövegboxba.No mindegy azért köszi a segítséget.
Az egy sor lekicsinylő szöveg helyett nekem jobban esett volna az az egyszerű egy sor. -
martonx
veterán
válasz
VB Kezdő #1220 üzenetére
Szia!
Gondolom te voltál, aki a másik vb-s fórumban is feltetted ugyanezt a kérdést, pár héttel ezelőtt. Sajnos most is csak ugyanazt tudom mondani, hogy a serialport objektumon keresztül vezérelheted a nyomtatódat.
És biztatásul roppant egyszerű a serialport írása kb. serialport.write("üzenet a text fileból")
Előtte persze megnyitod serialport.open-nel, a végén meg lezárod serialport.close-al.Közben a fa struktúra bejáró algoritmusod bejárja a mappáidat a txt-k után kutatva, amiket megtalál azokat soronként kiolvassa, minden sornál meghívod a serialport.write-ot.
Két .txt között meg küldesz egy serialport.write("soremelés, aminek nem tudom fejből a kódját") üzenetet.
Voilá!
-
martonx
veterán
válasz
visityu #1221 üzenetére
Hehehe. Lehet triviális a megoldásom, de javaslom add össze a két textbox-ban lévő értéket, és ezt írasd bele a harmadik textboxba.
Annyira triviális a megoldás, hogy lusta vagyok beírni azt az egy program sort, ami ezt csinálja, gondolom 1 perc alatt te is rá fogsz jönni.
-
visityu
csendes tag
Üdv Mindenkinek!
Segítségre lenne szükségem. Készítettem egy egy excel fájlt amelynek különböző adatatait, különböző munkalapokra UserForm-ok segítségével kell kitölteni. Tehát megvannak a UserForm-ok a kitöltéshez, amik az oda beírt adatokat szépen be is teszik a megfelelő munkalap soron következő üres sorába, majd mentik a munkafüzetet.
Az egyik beviteli részen van gondom. A UserForm-on van 3 db TextBox, amiből kettőt kell kitölteni. Ezzel semmi gondom. Viszont a harmadik TextBox, az az első kettőnek az összege.
Az egyszerűbb az lenne, ha ezt nem is kellene kitölteni, mert a munkalapon teljesen egyszerű képlettel ennek az adatnak a cellája simán számolható. Nekem viszont ahova ez kell ott a UserForm kitöltésekor, ha rálépek mondjuk a harmadik TextBox mezőre, akkor kellene, hogy a harmadik TextBox-ban megjelenjen az első kettő összege.
Próbáltam utánanyálazni, de nem sikerült kielégítő megoldást találni. No meg ugye még nem is tartozom a gyakorlott Excel VBA használók népes táborába.
Ha valakinek van jó, megoldása azt szívesen venném.
Előre is köszi -
VB Kezdő
csendes tag
Sziasztok,
Egy kis segitségre lenne szükségem mert csak most ismerkedek a VB-vel. Egy olya programocskát kellene összehoznom amivel .txt fájlokból adatokat szeretnék küldeni a soros portra (nyomtatási céllal, de minden féle meghajtó program nélkül, csak a .txt fájlokban található karaktereket és üres karaktereket), de ugyanakkor lehetőség lenne a port beállitására, sőt még egy-két speciális nyomtató parancs elküldésére is (decimális módban) minden egyes .txt fájl között (sor emelés, papirvágás, stb...).
A program arra lenne használva, hogy a több ezer .txt fájlt ne egyenként kellene belenyitni a nyomtatóhoz tartozó "buta" programba hanem egyszerre ki tudjon nyomtatni mindent.
VB guruk gondolatait várnám válaszúl akik megmutatnák a helyes irányt a kivitelezésben. -
martonx
veterán
Rászántam ezt az 5 percet, és kiderült hogy néha azért van fejlődés az excel makró nyelvben.
Úgy tűnik a sima ActiveSheet.Paste végre úgy működik, ahogy már eddig is kellett volna. Legalábbis bármilyen alkalmazásból rakok szöveget a vágólapra, az excel makró faszán beilleszti azt a megadott cellába.
Hangsúlyozom, hogy ezt 64 bites Office 2010-el tapasztaltam.
-
martonx
veterán
A fenti példa amúgy sem működik Office 2007-tel, úgyhogy nyugodtan felejtsd el, vagy inkább javítsd ki úgy, hogy az működjön.
Pont pár hete tapasztaltam, hogy a nagyvállalati környezetünkben, az egy szál felhasználó gépén, akinek Office 2007-je van, nem fut a fasza kis vágólapos makróm.
shev7 segítségébe ezért is nem akartam beleokoskodni, mivel a megoldása tökéletes, csak sajnos mára egyre ritkábban használható.
Mivel mint mondtam nálunk csak 1 gépen van NEM Office 2003, ezért nem is foglalkoztam a problémával.
Mondjuk a probléma biztosan bagatell, és te is rá tudsz jönni, hogy Office 2007-ben mit kell változtatni a kapott példához képest.
shev7 érthetően leírta, hogy hol kell hozzáadnod a plusz referenciát, ez Office 2007-ben is pont ugyanott található, mint az összes eddigi, sőt az Office 2010-es verzióban is.
Ha nagyon nem tudsz rájönni, itthon Office 2010-em van, ránézhetek a problémára (hacsak majd ki nem derül, hogy a 64 bites Office 2010-es megoldásom nem lesz jó a 32 bites Office 2007-edbe...)
-
shev7
veterán
office 2007-em nincs a meloban. De ugye a referenciat nem az excelben kell hozzaadni, hanem a VBA editorban, az meg emlekeim szerint 2007 alatt is a "klasszikus menu"-t hasznalja...
mit ertesz az alatt, hogy onmagaban mukodokepes? mi nem mukodokepes azon, hogy egy valtozoban (amivel ugye azt csinalsz utana amit akarsz) bekerul a vagolap tartalma? azert ezt adoptalni a sajat kododba mar nem kene hogy problemat jelentsen...
Dim DataObj As New MSForms.DataObject
DataObj.GetFromClipboard
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= DataObj.GetText, TextToDisplay:= "Link" -
Naras
őstag
-
Naras
őstag
Hi!
Excel - ben szeretném beilleszteni egy adott cellába a vágólap tartalmát egy macro parancssor részeként, úgy, hogy a mező felirata Link lesz. Jelenleg eddig jutottam, de nem tudom megoldani, hogy a vágólap tartalma bekerüljön a link felirat alá:
Sub Insert_Description()
'
' Insert_Description Macro
' Insert description from Clipboard
''
ActiveSheet.Paste
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
"Most ezt teszi be a link felirat alá, ide kéne a vágólap tartalma" _
, TextToDisplay:= _
"Link"
ActiveCell.Offset(0, 1).Range("A1").Select
End SubElőre is köszi a helpet!
-
dani850430
csendes tag
martonx: Köszönöm, sikerült megoldani kerekítéssel. Bár erről sem tudtam, hogy létezik ilyen... Az ember mindig tanul vmit
-
martonx
veterán
válasz
dani850430 #1210 üzenetére
Röviden: erre nincs lehetőség.
Hosszabban: Kerekíteni tudsz 4 tizedes pontosságra, és úgy kiíratni. -
dani850430
csendes tag
Sziasztok! Az lenne a kérdésem, hogy van e lehetősége arra, hogy egy single típusú változónak a pontosságát korlátozzam? Vb6-ot használok, és azt szeretném elérni, hogy ha elosztok két számot, akkor az eredményt csak 3 vagy 4 tizedes pontossággal irja ki, és ne 7 vagy 8-cal. Előre is köszönöm!
-
#10382336
törölt tag
válasz
martonx #1207 üzenetére
Azt hiszem, eddig elbeszéltünk egymás mellett amibe az is közrejátszott,
hogy nagyon sok mindenről írtam egyszerre, és nem csak a leglényegesebb
dolgot írtam le. A lényeg szárazon így nézne ki:Adott egy adatbázis amelyben határidőadatok vannak.
Az én általam készítendő program arra való, hogy indításkor, valamint utána
perecenként a háttérben leellenőrizze ezeket a határidőket, és ha talál
végrehajtandó feladatot, akkor csak ezeket a rekordokat jelenítse meg.Talán így lehetett volna legtömörebben leírni a program fő feladatát.
Én azonban belementem olyan részletekbe, hogy a program nem csak
adatbázist tud kezelni, hanem .xls fájlt, karakterrel tagolt szövegfájlt
stb... Ezt lehet hogy nem kellett volna. Bocs.Legközelebb megpróbálok a lehető legtömörebben fogalmazni.
-
martonx
veterán
válasz
#10382336 #1206 üzenetére
Az összefoglalva rész segített
Javaslom adatbázist használj. Eltárolod benne a futtatandó program útvonalát, indítás idejét. Egy timer meg percenként megnézi, hogy mit kell indítani.
Ahhoz képest amit leírtál pár varázslós kattintással meg lehet oldani. Plusz egy pár sor, ami kezeli a timert, meg indítja az útvonalon megadott programot. -
#10382336
törölt tag
válasz
martonx #1205 üzenetére
Ezek a megoldások valóban tökéletesek akkor ha valaki egy-egy
alkalommal szeretne 1-2 lépéses feladatokat végrehajtani.A feladatok testreszabottan automatizálni csak programmal, vagy
parancsállománnyal lehet. Pl. a Total commander tökéletes akkor,
ha 1-2 útvonal tartalmát szeretné valaki kilistázni különböző fájlokba.
Körülményesebb azonban ezt több alkalommal megcsinálni, és
ezeket összehasonlítani.Bár az is igaz, ha tudja valaki az adott program parancssori paraméterezését,
akkor elvileg egy .bat fájl is elegendő lehet, eleinte az időzítést is valmilyen
parancssori paranccsal oldottam meg, aminek már nem is jut eszembe
a neve, de ezt a parancsállományt is végső soron programból hoztam létre.
Közben eszembe jutott a parancs neve "AT".Összefoglalva: automatizált feledatokat program nélkül nagyon nehéz megoldani.
Arról nem is beszélve, hogy a gép bekapcsolásakor kapásból látom, hogy mikorra
mit terveztem be anélkül, hogy bármihez is hozzányúlnék. -
martonx
veterán
válasz
#10382336 #1204 üzenetére
Francba, egy hosszú válasz közepén tartottam, mikor összeomlott a Firefoxom...
Akkor már csak röviden:
1. Ha jól értem egy feladatkezelő programot szeretnél, határidőkkel, lekérdezésekkel. Ehhez nem kellenek mindenféle file-ok, modulok, saját texteditorok, hanem egy sima adatbázis alkalmazás. Varázslókkal pár perc alatt összekattintható, még programozási tudás se nagyon kell hozzá.
2. Windows kereső kiegészítése: erre ezeregy program létezik pl. google toolbar. Vagy ott van a total commander baromi jó file keresője, ami a fileokon belül is keres. Vagy még jobbat mondok. Szimpla windows shell parancs a findstr. Ha mindenképpen programozni akarsz akkor írj a findstr köré egy kis alkalmazást, de hangsúlyozom felesleges.
3. bináris adatot a streamwriter, streamreader tud kezelni. Csak bináris módba kell őket kapcsolni. Miért kell neked bináris adat?
4. Lehet félreértettelek. Ez történik akkor, ha valaki nem 1-2 mondatban lényegre törően válaszol.
-
#10382336
törölt tag
válasz
martonx #1203 üzenetére
Köszi a tippet a .ico-hoz.
Ha nagyon röviden össze szeretném foglalni, akkor a határidőellenőrző egy
hasznos "kis" program. A lényege hogy egy adatfájlban fel lehet sorolni az
ellenőrzendő fájlok listáját, amelyeket jelenleg a gép indításakor átellenőriz.
és ha talál lejárt határidőt, akkor azokat kiírja egy fájlba, majd a shell
funkcióval elindítja a szerkesztőt. Természetesen külön is elindítható.
A program egy listafájlt használ, amelyben az ellenőrzendő fájlok felsorolása
van. Ezeket a fájlokat egyenként beolvassa, és ellenőrzi a teljesítetlen
határidőket. A listafájl pl. így néz ki:
c:\aaa.txt
c:\bbb\ccc.xls,5,munka1
stb...Az adatfájloknak a következő oszlopokat kell tartalmaznia:
Megnevezés Határidő TeljesítésEzeken kívül még az ellenőrzésnél az "Időkülönbség" nevű oszlopot is
figyelembe veszi, ha van. Ezenkívül bármennyi oszlopot tartalmazhat.
Ha az adott sor teljesítés oszlopa üres és az aktuális dátum nagyobb
vagy egyenlő a határidő-időkülönbség értékénél, akkor ezt a sort
kiírandó határidőnek veszi, és a fájl nevét, valamint a sor adatait kiírja célfájlba.
Az időkülönbség értékét alapesetben a progamkód határozza meg, tehát ha
nincs ilyen oszlop, akkor ezt veszi figyelembe.A többi programmal egyik célom egy rendszermonitorozó programhoz
hasonlító valami lenne, a másik pedig a windows keresőjét kiegészítő
programcsoportot létrehozni, mert a windows keresőjével pl. a .vb fájlokban
sem lehet például tudomásom sszerint szöveget keresni.A szerkesztőkre ezen különleges fájltípusok könnyeb szerkesztése miatt
van szükség. Pl. a határidőellenőrzés listafájlának szerkesztéséhez tervem
szerint beteszek egy olyan menüpontot, amely tallózás után "beteszi"
a fájl nevét és egyéb jellemzőit az aktuális kurzorpozícióba. Ezért hiába van
pl. a windows-nak notepad.exe-je készen, ilyeneket nem tudok vele
megcsinálni.Bocs, hogy megint ilyen hosszúra sikeredett a válaszom, de ez olyan
összetett témakör, hogy még egy programról is ennél többet kellene
írnom, ha részletezném, nemhogy ennyiről.
A txtedit pl. 57 Kbyte és a következő fájlokból áll.
Fájladatbekérő.vb: osztály a megnyitás,mentés másként stb... párbeszédablakhoz
Fájlbeolvasó.vb: modul a megnyitandó fájl beolvasásához tartalmazó rutinokat
tartalmaz.
Fájlio.vb: osztály a fájl adatainak tárolásához
Fájlkiíró.vb: modul a fájlbeolvasó párja
Form1.vb: osztály indításhoz
Kódolás.vb: modul az egyedi kódoláshoz
Rendszerváltozók.vb: modul a különböző mappák helyének lekérdezése és
tárolása. Pl. windows mappa
Txtedit: osztály a szerkesztő űrlapjának menüihez tartozó rutinok.Ezt még felsorolni sem egyszerű és még kész sincs teljesen!
Esetleg nem tudsz olyan objektumot, amivel bináris adatot lehet kezelni,
hasonlóképpen a Winhex programhoz, mert gondolom, annak objektumához
nem olyan egyszerű hozzáférni, mint pl. az excel-hez.Köszi és még egyszer bocs a hosszú válaszért.
-
martonx
veterán
válasz
#10382336 #1202 üzenetére
.ico-t szerkeszteni célprogramokkal tudsz. Googli kidob neked többet is, van köztük ingyenes is. Ha jól értem csinálni szeretnél egy saját ikon-t, és azt használni a programodban?
Ahogy néztem az általad leírtak mindegyike megoldható, ráadásul viszonylag könnyen, de a sok apró dolog együtt nagyon nagy munkának tűnik. Viszont egy dolgot nem írtál le. Mire akarod ezt a programot használni? Lehet lenne sokkal egyszerűbb módja is egy adott feladat megvalósításának, mintsem egy új operációs rendszer elkészítése.
-
#10382336
törölt tag
válasz
martonx #1201 üzenetére
Én az USB programozásához semennyire nem értek, pedig
jó lenne, mert USB-LPT átalakító is létezik. Így néz ki: [link]
Mondjuk erre az előző kód biztos nem lenne megfelelő.
A VB.NET programozást sem régen kezdtem el nézegetni, de
ennek az alapjait legalább kezdem érteni. Csak az a baj, hogy az angol nem igazán az
erősségem, viszont a legtöbb leírás angolul van. De azért nem adom fel.
Vannak fordítóprogramok, lassabban megy, de mégis haladok.
A másik probléma hogy elég sok mindenre van elképzelésem, de ugyanakkor egy rendszert is jó lenne felállítani. Az elképzeléseim többek között:- egy "Konzolszerű" főprogram kidolgozása, amelynek működés közben nem
látszik az űrlapja, csak ha az óra melletti ikonjára rákattintok (ez a rész már kész van). Ebben a programban
lenne egy hasonló időzitő, mint az LPT példában, amit hasonlóra tudnék használni,
mint a windows feladatütemezője. -- Ezt majdnem hogy csak be kell másolni az LPT példából.- "txtedit", vagy hasonló nevű program, ami hasonlítana a jegyzettömbre, de annál többet tudna.
Pl. a következő fájltípusokat tudná kezelni:
szövegfájl
szövegfájl karakterrel(pl. tabulátorral ) tagolt. Ezt képes lenne táblázatként kezelni.
Microsoft Word dokumentum szövegrésze.
Microsoft Excel munkalap(.xls) szövegrésze, a munkalap nevének megadása után
Microsoft Access adatbázis egy táblája, a táblanév megadása után.
Datagrid objektum bináris fájlban.
Mindezen fájlok egyedileg kódolva, külön kódok nélkül, ill. külön olvasási és írási kóddal.
Ennek egy kicsi része is megvan, de ez a kis része tökéletesen működik. De ezzel még nagyon sok
munkám lesz, főleg a mentés másként paranccsal.- "Gridedit", vagy hasonló nevű program, amivel mint a nevéből is kitűnik datagrid nézetben lehetne
szerkeszteni az előbb említett fájlokat. Annyival tudna többet a "txtedit" -nél, hogy
az Excel -hez hasonlóan egyszerre több oldalt lehet szerkeszteni.
Ez még gyerekcipőben jár, illetve darabokban megtalálható, mivel a lépéseit önmagában tudom kezelni,
de ezeket egységes egésszé tenni nem kis munka lesz.- "Binedit" nevű program, ami evidens, hogy mit csinál.
Na ehhez lövésem nincs, hogy hogy álljak neki. A fájlok bináris I/O műveletével ugyan semmi gondom nincs,
azonban fogalmam sincs, hogy a kezelőfelületet hogy állítsam elő. Gondolkodtam "textbox"-on, de az
iszonyatos munka lenne. String hosszának korlátozása, kurzorváltozásnál figyelni a kurzorpozicíót és hogyha
szóközre mutat akkor eggyel odébbvinni, nem is beszélve arról, hogy két helyen van ugye kurzor, az egyik HEX, a
másik ASCII formátumban. Alegjobb lenne valami olyan objektum, képes a bináris adatok szerkesztésére, de ilyent
eddig sehol nem találtam. Illetve a "Regedit" programban van egy bináris szerkesztőfelület, de fogalmam nincs,
hogy annak objektumához hogy tudok hozzáférni, ha egyáltalán ez lehetséges.- "Határidőellenőrző" nevű program, amely minden olyan fájlformátumot tudna forrásként kezelni, mint a "Txtedit".
Az ellenőrző része már működik. Legnagyobb hiányossága a "txtedit" hiányosságából fakad. Ezt a programot egyébként
időnként meghívhatja a "Konzolszerű" főprogram, hogy megvizgálja és kijelezze a lejárt- vagy ahhoz közelítő határidőket.- "Fdir" program, ami fájlokat listázna ki szövegfájlba a "txtedit"-ben használt fájltípusokat használva
adat- és célfájlként. Az adatfájlban soronként meg lehetne adni az utvonalat,mappamaszkot,fájlmaszkot,almappákban keressen-e,
mappákat keressen-e,fájlokat keressen-e.- "Rdir" program, ami a registry tartalmát listázná ki, az előzőhöz hasonló működési elven.
- "Fcomp" ill. "Rcomp" az "Fdir" ill. "Rdir" programok célfájljainak összehasonlítására és kigyűjtésére egy célfájlba.
- "Fájlfigyelő", ami elindítás után a megadott mappába gyűjtené ki figyelt mappákban levő változtatásokat.
Ebből is egy rész megvan a filesystemwatcher osztály felhasználásával. Jobb lenne egyébként egy olyan objektum,
amely lehetőséget adna arra is, hogy lehetséges legyen engedélyezni, vagy tiltani a műveletet. A filesystemwatcher
objektumnak a hátránya még, hogy átnevezésnél csak az új nevet írja ki, azt hogy miről lett átnevezve, azt nem.
Vagy csak én nem találom meg azokat a tulajdonságokat, vagy függvényeket amik ezeket visszaadják értékként.- "Binkereső" és "Txtkereső", amely bináris, ill. szövegfájlokban levő keresést tesz lehetővé.
Hát a közeljövőben többek között ezeket szeretném megoldani. Ezek mellett azonban jó lenne a weboldal készítésének módjáról
is valamit megtudni, mert erről elképzelésem sincs, hogy hogyan megy.Ez a terv. Kisebb-nagyobb részben ezek megvalósításának alapjai megvannak, csak nagyon sok idő kell(ene) hozzá.
Más fontos, vagy kevésbé fontos részhez lövésem sincs, ezekhez majd a konkrét ügyben szeretném megkérdezni a fórumozókat.
Az első ilyen nem életbevágó kérdésem az lenne, hogy (B)hogyan lehet .ico kiterjesztésű fájlt létrehozni/szerkeszteni.(/B)
A kérdés azért nem életbevágó, mert a fentebb említett "Konzolszerű" főprogram enélkül is működik, de jobb lenne, ha
az óra melletti ikont saját magam tudnám szerkeszteni. Ugyanis a programban van a következő sor:
notifyIcon1.Icon = New Icon("konzolikon.ico")
No ezt csak úgy tudom megcsinálni, hogy keresek egy .ico fájlt, átmásolom a mappába, majd átnevezem.
Ha valaki tudja erre a megoldást, kérem írja meg.Köszi.
-
martonx
veterán
válasz
#10382336 #1199 üzenetére
Madár riasztó! Erre nem gondoltam volna. Komolyan kíváncsi voltam, hogy mit csinálsz. Jó tudni.
Mondjuk én nem állnék neki ilyet barkácsolni, hanem vennék egy időzítős konnektort, vagy hogy is hívják pontosan. A medence vízforgatását, meg a karácsonyi világítást ilyennel oldottam meg.
De te biztos szeretsz elektronikát szerelni, én meg tisztelem a tudásod.
Egyébként én USB portos eszközöket szoktam programozni, és mivel manapság mindenhez van usb port, ezért nem tudtam elképzelni, hogy a párhuzamos portot mihez használod. De ha magadnak építetted össze, akkor érthető.
Jelenleg másodállásban Malájziában fejlesztett, gyártott usb-s eszközökhöz írok UI-t, igaz azt nem VB.Net-ben hanem C#-ban, bár egyszer lehet portolom VB-re (a kedvenc program nyelvemre).
Új hozzászólás Aktív témák
Hirdetés
- Samsung Galaxy S23 Ultra 256GB, Kártyafüggetlen, 1 Év Garanciával
- Mini PC, tiny PC HP Fujitsu Esprimo i5-7500T
- AKCIÓ! GIGABYTE GA-Z170X-UD3 Z170 chipset alaplap garanciával hibátlan működéssel
- Telefon felvásárlás!! iPhone 15/iPhone 15 Plus/iPhone 15 Pro/iPhone 15 Pro Max
- Alkatrészt cserélnél vagy bővítenél? Nálunk van, ami kell! Enterprise alkatrészek ITT
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged