pravim text editor u VB... ali je malo zapelo :-(

pravim text editor u VB... ali je malo zapelo :-(

offline
  • Pridružio: 01 Maj 2003
  • Poruke: 1300
  • Gde živiš: Kragujevac

pravim text editor. kako da uradim da u VB-u cita fajl (text dokument) kada se pozove iz windows-a... recimo iz windows explorera.

znaci kad pozovem neki fajl sa recimo .txt extenzijom on otvara program ali ne cita fajl. kako da to izvedem?

nadam se da me razumete... Smile



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 18 Apr 2003
  • Poruke: 5001
  • Gde živiš: Beograd

moras da prosledis svom programu ime fajla kao argument -> 'notepad.exe fajl.txt' e a kako da ti iz svog programa procitas ime tog fajla to vec ne znam Smile pogledacu



offline
  • Pridružio: 25 Feb 2004
  • Poruke: 35
  • Gde živiš: BiH-RS

Na kartici - Project VB-a otvori References, i zakaci: Microsoft Scripting Runtime.
Na formu postavi jedan CommandButton i jedan RichTextBox.
Recimo da na disku c:\ imas txt file pod imenom "Sove".
Ovaj kod ce ti klikom na dugme u RichTextBox1 ispisati sadrzaj "Sove.txt"

code:

Private Sub Command1_Click()

Dim A As Scripting.FileSystemObject
Dim B As Scripting.TextStream

Set A = New Scripting.FileSystemObject
Set B = A.OpenTextFile("C:\Sove.txt", ForReading, False, TristateFalse)

RichTextBox1.Text = B.ReadAll

B.Close

Set A = Nothing
Set B = Nothing

End Sub

_____________________________________________
Sove

offline
  • Pridružio: 01 Maj 2003
  • Poruke: 1300
  • Gde živiš: Kragujevac

ne ne. hocu asocijaciju na program koji pravim. znaci kada iz explorera pozovem file "sove.txt' da umestno netepad-a ukljuci moj program i da prikaze tekst.

nadam se da je sada jasnije

offline
  • Pridružio: 18 Apr 2003
  • Poruke: 8134
  • Gde živiš: U kesici gumenih bombona...

ja sam i pomislio da je to u pitanju pa ne htedoh nista reci, ali sam pogresio... imam ja negde na disku kako se to radi pa ako imas vremena ili ako me neko ne preduhitri ja cu potraziti pa ti dati nije problem... samo da nadjem...

btw imam za VB.NET ako moze da pomogne Smile

offline
  • Pridružio: 18 Apr 2003
  • Poruke: 8134
  • Gde živiš: U kesici gumenih bombona...

evo nasao sam... Smile
nisam siguran da li radi posto nisam probao mada ne verujem da ne radi... znao sam da ima neke veze sa Registry bazom, ali ne znam tacno gde treba da se stavi... no evo kod:

'############################################

Declare Function RegCreateKey Lib "advapi32.dll" Alias _
"RegCreateKeyA" (ByVal hKey As Long, _
ByVal lpszSubKey As String, _
lphKey As Long) As Long

Declare Function RegSetValue Lib "advapi32.dll" Alias _
"RegSetValueA" (ByVal hKey As Long, _
ByVal lpszSubKey As String, _
ByVal fdwType As Long, _
ByVal lpszValue As String, _
ByVal dwLength As Long) As Long

' Return codes from Registration functions.
Public Const ERROR_SUCCESS = 0&
Public Const ERROR_BADDB = 1&
Public Const ERROR_BADKEY = 2&
Public Const ERROR_CANTOPEN = 3&
Public Const ERROR_CANTREAD = 4&
Public Const ERROR_CANTWRITE = 5&
Public Const ERROR_OUTOFMEMORY = 6&
Public Const ERROR_INVALID_PARAMETER = 7&
Public Const ERROR_ACCESS_DENIED = 8&
Public Const HKEY_CLASSES_ROOT = &H80000000
Public Const MAX_PATH = 256&
Public Const REG_SZ = 1



'*----------------------------------------------------------*
'* Name : CreateAssociation *
'*----------------------------------------------------------*
'* Purpose : Associate a file type with a program in *
'* : Win95 and WinNT *
'*----------------------------------------------------------*
'* Parameters : strAppKey Required. File type alias. *
'* : strAppName Required. File type name. *
'* : strExt Required. File type extension. *
'* : strCommand Required. Command associated *
'* : with file type. *
'*----------------------------------------------------------*
Private Sub CreateAssociation(strAppKey As String, _
strAppName As String, _
strExt As String, _
strCommand As String)

Dim sKeyName As String ' Holds Key Name in registry.
Dim sKeyValue As String ' Holds Key Value in registry.
Dim ret As Long ' Holds error status if any from
' API calls.
Dim lphKey As Long ' Holds created key handle from
' RegCreateKey.

'Creates a Root entry called strKeyName.
sKeyName = strAppKey
sKeyValue = strAppName
ret = RegCreateKey(HKEY_CLASSES_ROOT, sKeyName, lphKey)
ret = RegSetValue(lphKey&, "", REG_SZ, sKeyValue, 0&)

'Creates a Root entry called strExt associated with strKeyName.
sKeyName = strExt
sKeyValue = strAppKey
ret = RegCreateKey(HKEY_CLASSES_ROOT, sKeyName, lphKey)
ret = RegSetValue(lphKey&, "", REG_SZ, sKeyValue, 0&)

'Sets the command line for strKeyName.
sKeyName = strAppKey
sKeyValue = strCommand
ret = RegCreateKey(HKEY_CLASSES_ROOT, sKeyName, lphKey)
ret = RegSetValue(lphKey&, "shell\open\command", REG_SZ, _
sKeyValue, MAX_PATH)
End Sub


ovo sve stavi u jedan fajl i kada pozivas uradi ovako...


Sub test_Association()
CreateAssociation "TestApp", "App for Assoc testing", ".pcd", _
"notepad.exe %1"
End Sub

znaces sta je sta posto pise i iznad procedure sta je... tako da je to to... javi da li radi...

sorry sto nisam bojio, ali me je mrzelo Wink

pozdrav!

offline
  • Pridružio: 01 Maj 2003
  • Poruke: 1300
  • Gde živiš: Kragujevac

hvala, probacu

Ko je trenutno na forumu
 

Ukupno su 959 korisnika na forumu :: 28 registrovanih, 5 sakrivenih i 926 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: Bluper, Bojan85, BraneS, darkangel, doloress, Excalibur13, goxin, havoc995, HogarStrashni, Joja, Koridor, Kriglord, kybonacci, maiden6657, mercedesamg, Metanoja, mgolub, mikki jons, milenko crazy north, oldtimer, pedja.st, pein, Regrut Boskica, rovac, savaskytec, Sirius, styg, YugoRanger