ntg_net Δημοσ. 18 Μαρτίου 2007 Δημοσ. 18 Μαρτίου 2007 Θελω αν μπορει καποιος να μου κανει ή να μου πει πως γινεται το παρακατω. Ενα προγραμμα που να τρεχει στο systray και να περνει απο ενα txt αρχειο καποιες τιμες px.txt [otenet] gateway : 192.168.5.1 dns : 192.168.5.1 [tellas] gateway : 192.168.5.2 dns : 192.168.5.2 Eδω αν προσ8εσω και αλλη [εδω] να το προσ8ετει στο systray Eτσι με το παραπανω 8α βγαζει στο systray otenet και απο κατω tellas Πατωντας 8α αλλαζει πυλη και dns. Ολα αυτα για να αλλαζω γραμμη αυτοματα χωρις reboot κιολας Γινεται ? Ευχαριστω...
ntg_net Δημοσ. 18 Μαρτίου 2007 Μέλος Δημοσ. 18 Μαρτίου 2007 Μια διευκρινηση... δεν 8ελω να γινει με Shell και netsh βασικα δεν 8ελω command line
ntaryl Δημοσ. 18 Μαρτίου 2007 Δημοσ. 18 Μαρτίου 2007 File moy des sto http://www.pscode.com pisteyv na se boh8hsei an xreiasteis kati edv eimai pali kalo brady
lefi Δημοσ. 19 Μαρτίου 2007 Δημοσ. 19 Μαρτίου 2007 Όταν λες systray ενοείς το εικονιδιάκι στην άκρη; πρώτο link για να κοιτάξεις είναι: http://www.insomnia.gr/vb3/showthread.php?t=21063&highlight=tray επίσης για διαχέίρηση txt: http://dide.flo.sch.gr/Plinet/Tutori...l%20Basic.html και http://www.insomnia.gr/vb3/showthread.php?t=182832
ntg_net Δημοσ. 19 Μαρτίου 2007 Μέλος Δημοσ. 19 Μαρτίου 2007 Όταν λες systray ενοείς το εικονιδιάκι στην άκρη;πρώτο link για να κοιτάξεις είναι: http://www.insomnia.gr/vb3/showthread.php?t=21063&highlight=tray επίσης για διαχέίρηση txt: http://dide.flo.sch.gr/Plinet/Tutori...l%20Basic.html και http://www.insomnia.gr/vb3/showthread.php?t=182832 Τιποτα απο τα παραπανω δεν κανει, δεν λενε τιποτα συγκεκριμενο.(και το δευτερο λινκ δεν δουλευει) Η λυση βρεθηκε απο τον χρηστη UserXP που απαντησε με ετοιμο κωδικα σε pm και αν εγκρινει και θελει καποιος να τον δει τον ποσταρω. Και παλι ευχαριστω UserXP.
ntaryl Δημοσ. 19 Μαρτίου 2007 Δημοσ. 19 Μαρτίου 2007 Ναι θα ηταν ενδιαφερον περιμενουμε να δουμε την λυση καλο απογευμα
citizen Δημοσ. 21 Μαρτίου 2007 Δημοσ. 21 Μαρτίου 2007 Ελπιζω να δημοσιευθεί ο κωδικας. Ενδιαφέρον ...
ntg_net Δημοσ. 30 Μαρτίου 2007 Μέλος Δημοσ. 30 Μαρτίου 2007 Ο καταπληκτικος UserXP μου εστειλε τον παρακατω κωδικα που κανει αυτο που ζητησα. tnx x10000 Με την αδεια του το ποσταρω. >Option Explicit Private Const SW_SHOW As Long = 5 Private Const SW_SHOWDEFAULT As Long = 10 Private Const SW_SHOWMAXIMIZED As Long = 3 Private Const SW_SHOWMINIMIZED As Long = 2 Private Const SW_SHOWMINNOACTIVE As Long = 7 Private Const SW_SHOWNA As Long = 8 Private Const SW_SHOWNOACTIVATE As Long = 4 Private Const SW_SHOWNORMAL As Long = 1 Private Const SW_SMOOTHSCROLL As Long = &H10 Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Private Const WM_LBUTTONDBLCLK = &H203 Private Const WM_LBUTTONDOWN = &H201 Private Const WM_LBUTTONUP = &H202 Private Const WM_MBUTTONDBLCLK = &H209 Private Const WM_MBUTTONDOWN = &H207 Private Const WM_MBUTTONUP = &H208 Private Const WM_RBUTTONDBLCLK = &H206 Private Const WM_RBUTTONDOWN = &H204 Private Const WM_RBUTTONUP = &H205 Private Const NIM_ADD = &H0 Private Const NIM_MODIFY = &H1 Private Const NIM_DELETE = &H2 Private Const NIF_MESSAGE = &H1 Private Const NIF_ICON = &H2 Private Const NIF_TIP = &H4 Private Type NOTIFYICONDATA cbSize As Long hWnd As Long uId As Long uFlags As Long ucallbackMessage As Long hIcon As Long szTip As String * 64 End Type Private TrayI As NOTIFYICONDATA Private Declare Function Shell_NotifyIcon Lib "shell32" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, pnid As NOTIFYICONDATA) As Boolean Private Sub Form_Load() mnuaProvider(0).Enabled = False '----------------------------------------------------------------- TrayI.cbSize = Len(TrayI) TrayI.hWnd = pic1.hWnd 'Link the trayicon to this picturebox TrayI.uId = 1& TrayI.uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE TrayI.ucallbackMessage = WM_LBUTTONDOWN TrayI.hIcon = Me.Icon TrayI.szTip = "My systray" & Chr$(0) 'Create the icon Shell_NotifyIcon NIM_ADD, TrayI '----------------------------------------------------------------- LoadFromTxt End Sub Sub LoadFromTxt() Dim iniName As String, ini As New clsIniFile Dim i As Long, allSec As Integer, a() As String Dim gateway As String, dns As String ' ******************************* ' Ôï format ðñÝðåé íá åßíáé ìå = êáé ü÷é ìå : ' êáé êáëýôåñá íá õðÜñ÷åé ìßá êåíÞ ãñáììÞ óôçí áñ÷Þ ' ' gateway = 192.168.5.1 ' dns = 192.168.5.1 ' ' ******************************* iniName = App.Path & "\aTxt.txt" If Dir(iniName) = "" Then MsgBox "File not found" Exit Sub End If ini.FullPath = iniName allSec = ini.GetSectionsEx(a) mnuaProvider(0).Visible = True While mnuaProvider.UBound > 0 Unload mnuaProvider(mnuaProvider.UBound) Wend For i = 0 To allSec - 1 ini.SectionName = a(i) gateway = Trim(ini.GetString("gateway", "")) dns = Trim(ini.GetString("dns", "")) If gateway <> "" And dns <> "" Then Load mnuaProvider(mnuaProvider.UBound + 1) mnuaProvider(mnuaProvider.UBound).Caption = a(i) mnuaProvider(mnuaProvider.UBound).Tag = gateway & "-" & dns mnuaProvider(mnuaProvider.UBound).Enabled = True mnuaProvider(mnuaProvider.UBound).Visible = True End If Next i If mnuaProvider.UBound > 0 Then mnuaProvider(0).Visible = False End If End Sub Private Sub Form_Unload(Cancel As Integer) TrayI.cbSize = Len(TrayI) TrayI.hWnd = pic1.hWnd TrayI.uId = 1& 'Delete the icon Shell_NotifyIcon NIM_DELETE, TrayI End Sub Private Sub mnuaProvider_Click(Index As Integer) Dim gateway As String, dns As String Dim pl As Long, fName As String pl = InStr(mnuaProvider(Index).Tag, "-") If pl = 0 Then Exit Sub gateway = Left(mnuaProvider(Index).Tag, pl - 1) dns = Mid(mnuaProvider(Index).Tag, pl + 1) ' *** ' Åäþ êÜíå üôé èåò ìå ôá gateway êáé dns 'Äçìéïõñãßá ôïõ áñ÷åßïõ script fName = App.Path & "\aScript.vbs" If Dir(fName) <> "" Then Kill fName Open fName For Output As 1 Print #1, "strComputer = "".""" Print #1, "Set objWMIService = GetObject(""winmgmts:\\"" & strComputer & ""\root\cimv2"")" Print #1, "Set colNetAdapters = objWMIService.ExecQuery (""Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE"")" Print #1, "strIPAddress = Array(""" & gateway & """)" Print #1, "strSubnetMask = Array(""255.255.255.0"")" Print #1, "strGateway = Array(""" & gateway & """)" Print #1, "strDNS = Array(""" & dns & """, ""10.10.10.11"")" Print #1, "strGatewaymetric = Array(1)" Print #1, "For Each objNetAdapter In colNetAdapters" Print #1, "errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)" Print #1, "errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)" Print #1, "errDNS = objNetAdapter.SetDNSServerSearchOrder(strDNS)" Print #1, "If errEnable = 0 Then" Print #1, "WScript.Echo ""The IP address has been changed.""" Print #1, "Else" Print #1, "WScript.Echo ""The IP address could not be changed.""" Print #1, "End If" Print #1, "Next" Close 1 ' ****************************** ' ÅêôÝëåóç êÜðïéïõ áñ÷åßïõ script Dim FileNameToRun As String ' Äþóå óôï FileNameToRun ôï üíïìá ôïõ áñ÷åßïõ ðïõ èÝëåéò íá ôñÝîåéò FileNameToRun = fName ShellExecute Me.hWnd, vbNullString, FileNameToRun, vbNullString, "", SW_SHOWNORMAL ' ****************************** End Sub Private Sub mnuExit_Click() Unload Me End Sub Private Sub pic1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim msg As Single msg = X / Screen.TwipsPerPixelX If msg = WM_LBUTTONDBLCLK Then 'If the user dubbel-clicked on the icon ElseIf msg = WM_RBUTTONUP Then 'Right click Me.PopupMenu mnuMenu End If End Sub
ntg_net Δημοσ. 30 Μαρτίου 2007 Μέλος Δημοσ. 30 Μαρτίου 2007 http://insomnia.gr/vb3/attachment.php?attachmentid=6915&stc=1&d=1175262114 test.zip Στο παραπανω ποστ τα σχολια με ελληνικα γραμματα τα βγαζει 'κινεζικα' στο ζιπ ειναι κανονικα. Επισης μια αλλαγη χρειαζεται ο κωδικας στο gateway αλλαζει την ip Mαλλον 8α το ξαναστειλει ή θα τον ανεβασει ετοιμο παλι τον κωδικα ο UserXP test.zip
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.