Datamaskin
  | Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> Computer Programmeringsspråk >> Content
    Slik kjører en prosess på en ekstern PC Med WMI
    WMI (Windows Management Instrumentation ) brukes for å kontrollere administrasjonsoppgaver i alle Windows- grensesnittet. Infrastrukturen er rettet mot C /C + + programmerere , men det kan implementeres av programmerere å bruke hvilken som helst Windows - kompatibel skriptspråk , som VBScript. WMI er et kraftig verktøy for administrative prosesser på lokal server , men det er spesielt nyttig for eksterne maskiner . For at WMI til å få tilgang til en ekstern datamaskin , må den eksterne datamaskinen lar det passere brannmuren. Instruksjoner
    en

    Angi tillatelser på den eksterne datamaskinen . Hvis en administrator på "Computer A" må ha tilgang til "Computer B," det må være lov forbi "Computer B" brannmur. Logg inn "Computer B" og åpne ledeteksten . Klikk " Start", " Kjør" skriv " CMD.EXE " og trykk " Enter"
    2

    Skriv inn følgende ved ledeteksten : " . Netsh firewall set tjeneste RemoteAdmin aktiver" og trykk deretter på "Enter".
    3

    Lag en WBI locator objekt med følgende kode :

    Set objSWbemLocator = CreateObject ( " WbemScripting.SWbemLocator ")
    4

    Koble til den eksterne datamaskinen via " SWbemLocator.ConnectServer Method ". Denne funksjonen vil returnere en " SWbemServices " objekt , som brukes til å utføre kommandoer over ekstern tilkobling :

    objwbemServices = SWbemLocator.ConnectServer (_

    [ ByVal strServer ] , _
    < p> [ ByVal strNamespace ] , _

    [ ByVal strUser ] , _

    [ ByVal strPassword ] , _

    [ ByVal strLocale ] , _

    [ ByVal strAuthority ] , _

    [ ByVal iSecurityFlags ] , _

    [ ByVal objwbemNamedValueSet ] _

    )

    Hvor:

    strServer er navnet på den eksterne datamaskinen .

    strNamespace kan stå tomt .

    strUser er brukernavnet som skal brukes til å logge inn på ekstern datamaskin.

    strPassword er passordet for brukeren på den eksterne datamaskinen .

    strLocale kan stå tomt .

    strAuthority kan også være tomt .

    iSecurityFlags kan settes til ( 0x0 ) til gjøre skriptet fortsette å forsøke å koble til en tilkobling er opprettet . Alternativet er ( 0x80 ) , i hvilket tilfelle forbindelsen vil forsøke å laste i to minutter , så dør

    objwbemNamedValueSet kan stå tomt

    å fortsette eksempel: . .
    < p> Set objWMIService = objSWbemLocator.ConnectServer ( " Some_Computer ", _

    , _

    " Some_User ", _

    " Some_Pass ", _

    "", _

    "")
    5

    Kjør en kommando med " Win32_Process Class. " Denne funksjonen vil kjøre en kommando på den eksterne datamaskinen . Bruk MS - DOS syntaks å kjøre kommandoer i denne funksjonen : en

    uint32 Opprette (

    [ i ] string CommandLine , etter

    [ i ] string CurrentDirectory , etter < p > [ i ] Win32_ProcessStartup ProcessStartupInformation , etter

    [ ut ] uint32 ProcessId

    ) ;

    Hvor:

    CommandLine blir kommandoen som skal utføres på den eksterne maskinen .

    CurrentDirectory bør settes til null med mindre det er en grunn til å angi en katalog .

    Win32_ProcessStartup ProcessStartupInformation bør være forbindelsen objektet . I dette tilfellet vil det være SWbemLocator.ConnectServer objektet ble opprettet i forrige trinn.

    ProcessId vil bli en global variabel som inneholder prosess-ID for denne kommandoen . Angi et unikt variabelnavn her .

    Funksjonen returnerer "0" hvis prosessen er vellykket. Feilkoder blir returnert for mislykkede prosesser . For vårt eksempel , kan funksjonen skrives:

    Set objProcess = objWMIService.Get ( " Win32_Process ")

    intReturn = objProcess.Create _

    ( " Some_Command " , null, objWMIService , intProcessID )
    p Hvis intReturn < > 0 Then

    Wscript.Echo " Process kunne ikke opprettes . " & _

    VbNewLine & " Command line :" & strCommand & _

    vbNewLine & " Return verdi: " & intReturn

    Else

    Wscript.Echo " Process opprettet. " & _

    VbNewLine & " Command line :" & strCommand & _

    vbNewLine & " Prosess-ID :" & intProcessID

    End If
    6 < p> Lagre kode i en VBScript fil (med filtypen " . VBScript ") . Hele koden prøven for å koble til en ekstern datamaskin og kjøre en prosess er : en

    Set objSWbemLocator = CreateObject ( " WbemScripting.SWbemLocator ")

    Set objWMIService = objSWbemLocator.ConnectServer ( " Some_Computer " , _

    , _

    " Some_User ", _

    " Some_Pass ", _

    "", _

    "")

    Sett objProcess = objWMIService.Get ( " Win32_Process ")

    intReturn = objProcess.Create _

    ( " Some_Command " , Null, objWMIService , intProcessID )
    < p> Hvis intReturn < > 0 Then

    Wscript.Echo " Process kunne ikke opprettes . " & _

    VbNewLine & " Command line :" & strCommand & _

    vbNewLine & " Return verdi: " & intReturn

    Else

    Wscript.Echo " Process opprettet. " & _

    VbNewLine & " Command line :" & strCommand & _

    vbNewLine & " Prosess-ID :" & intProcessID

    End If
    7 < p> Høyreklikk på filen og velg "Properties". Kryss av i boksen for "Tillat gjennomføring av denne filen." Klikk på " Apply". Dobbeltklikk på filen for å kjøre prosessen .

    früher :

     Weiter:
      Relatert Artike
    ·Hvordan lage programmer for Razr -telefoner 
    ·Hvordan bruke Klasser i ActionScript 3 
    ·Hvordan å få en Oracle lagret prosedyre Fra SQL Comma…
    ·Hvordan lage pakker for Cydia på en iPhone 
    ·Hvordan legge til en Permalink 
    ·Hvordan lære PLS programmering 
    ·Hva er en GUI Application 
    ·Hvordan lære spill Coding 
    ·Hvordan Roter en tegning i PictureBox 
    ·Hvordan erstatte attributter Bruke XSL 
      Anbefalte artikler
    ·Sette inn Null Into Table Visual Basic & ADOX 
    ·Hvordan lage en nedtrekksliste i en DataGridView kolonn…
    ·Hvordan finne den korteste ordet i en setning eller Lis…
    ·Hvordan lenke til en CPP Fil 
    ·Hvordan program med Microsoft Visual Basic 
    ·Hvordan lage Skjermbilder og skjemaer med Python 
    ·Datatype VBScript funksjoner 
    ·Hjelp med sekvensiell filer i Java Programming 
    ·Hvordan legge til Numbers til en PHP Array 
    ·Hvordan bruke Datoer i en Access Query SQL Server 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/