Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

Computer naam in een variabele

webspider
10 antwoorden
  • Ik zou de computer naam in een variabele willen vangen.
    Hoe kan ik dat doen.
    Laten we zeggen, in basic, of in het dBase IV ideoom.
    (Ik werk met het Clipper ideoom)

    Met het commando "Net view" <enter> worden de computer-namen (in een dos box) op het scherm gezet. Maar hoe krijg ik die en een variabele?

    Resumerend: compnam = "computer name".

    MVG perloc
  • Je zou "net view > file.txt" kunnen uitvoeren en dan de data uit 'file.txt' kunnen inlezen.
  • Dat werkt!!

    Reuze bedankt!!

    MVG perloc
  • Tja, iets te enthousiast gereageerd!
    Het werkt zonder meer, maar ik heb later gezien dat het commando:
    NET VIEW <Enter>
    niet alleen de eigen computer naam geeft, maar een lijst van alle namen die in een netwerk zitten. (Dat veronderstel ik omdat dit netwerk maar bestaat uit 2 computers en beiden worden weergegeven.)
    Dus daaruit kan ik niet de naam van de computer halen die ik nodig heb, nl. "deze computer", tenzij die ALTIJD als laatste wordt vermeld. Maar dat kan ik niet testen.
    Is er aan ander commando / executable die wél en alleen de computernaam ophoest?

    MVG perloc
  • echo %COMPUTERNAME% > file.txt

    probeer dat eens :)
  • That's done it!!

    Nogmaals dank!

    MVG perloc
  • Elke oplossing heeft zo zijn problemen.
    Zo ook deze. Het werkt. Zondermeer. Maar helaas, alleen in Win2000 en WinXP. In Win98 en WinME wordt %computername% terug-ge-echoded!
    Daar heb ik maar "Net config > file.txt" voor gebruikt, want dat werkt weer niet in Win2000 en WinXP, althans geeft niet de computer naam.
    Dus het is opgelost, zij het niet fraai.

    Compatibility is ver te zoeken….

    MVG, perloc
  • if X%OS%==XWindows_NT echo %COMPUTERNAME% > file.txt
    Net config >> file.txt

    en dan alleen de eerste regel inlezen :)
    (de X%OS% is om te zorgen dat er altijd een string staat, anders zou het in principe problemen kunnen geven)

    eventueel kan je ook 'net config workstation' of 'net config server' gebruiken op NT platforms, geen idee wat het doet op 9x bakken. Deze laatste is waarschijnlijk de netste oplossing ;)
  • Wat je hier hebt geschreven daar krijg ik niet de computernaam uit.
    Ik heb een goede oplossing die werkt voor alle vier de Windows:
    *****************
    // Select this computer name.
    // "Echo %computername%" works only on Win2000 / WinXP,
    // "Net config" is only usable on Win98 / WinME

    Run echo %computername% > nview.txt
    vnet = MemoRead('nview.txt')
    If upper(vnet) = 'ECHO IS ON' && Opsys = Win98 or WinME
    Run net config > nview.txt
    vnet = MemoRead('nview.txt')

    For i = len(vnet) to 1 step -1
    If substr(vnet,i,2) = '\'
    For j = i + 2 to len(vnet)
    If substr(vnet,j,3) = ' '
    Exit
    Else
    compnam = compnam + substr(vnet,j,1)
    Endif
    Next j
    Exit
    Endif
    Next i
    Else
    compnam = alltrim(lower(vnet))
    Endif
    ***************
    Wat ik doe: ik wil mijn programma zo maken dat het werkt in ieder OS en waarvan ieder zelfde of ander OS als SERVER kan fungeren.
    De computernaam wordt in een listing van gebruikers (op dat moment) getoond, zodat de beheerder van mijn programma kan zien wie waar actief is in het netwerk.

    Anyway, dank voor de hulp.
    MVG perloc
  • Nog even twee dingen:

    - Helaas zijn in het stukje programma hierboven de TABs weggevallen, waardoor het wat moeilijker leesbaar is.

    - en in je bijzin dat "Goed Nederlands is makkelijker als u denkt" al een taalfout staat (tenzij de nieuwe spelling dit toestaat):
    met vergelijkende trappen - groter, kleiner, makkelijker, moeilijker wordt het "Goed Nederlands is makkelijker dan u denkt"
    en bij even groot, klein, dik, dun en makkelijk wordt het "Nederlands is even moeilijk als Portugees" (En daar kan ik van meepraten!)
    Maar dit terzijde…
    MVG perloc

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.