středa 2. února 2011

Otevření www pomocí powershellu

Nahodou jsem viděl scripty na otevření www pomocí powershellu a všude se uvadělo že je nejjednodušší otevirat v IE.

Shay Levy http://blogs.microsoft.co.il/blogs/scriptfanatic/archive/tags/PowerShell/default.aspx ale uvádí mnohe elegantnější možnost a sice (New-Object -com Shell.Application).Open("http://www.microsoft.com")

10 komentářů:

  1. Nejjednodussi je Start-Process http://www.microsoft.com.

    OdpovědětVymazat
  2. řeč není o start-process dejme iexplore.exe a to ani nahodou....takže schvalně jestli syntaxí start-process kterou tady mate popsanou už v prvních přispěvcich udělate kratší přikaz ke spuštění dejme tomu živě cz
    Takže (New-Object -com Shell.Application).Open("http://www.zive.cz")
    Tak spustite živě v default prohližeči a ted prosím kratší variantu pomocí start-process.Z principu syntaxe přikazu a toho jak powershell funguje neexistuje

    OdpovědětVymazat
  3. Nerozumím.
    Příkaz (New-Object -com Shell.Application).Open(”http://www.zive.cz”) mi otevře zive.cz v chromu - můj default prohlížeč. Start-Process udělá to stejný.
    Jo, kdybych si chtěl opravdu tu stránku otevřít v IE, tak klidně pomocí Start-Process. A na délku to vychází pořád líp:
    Start-Process iexplore.exe -a http://www.zive.cz
    vs.
    (New-Object -com Shell.Application).Open("http://www.zive.cz")

    Nejde tu ale tak o délku, jako o COM objekt, který má sadu svých metod a člověk musí zkoumat, o co jde a jak se s ním pracuje. Musí znát navíc jméno toho COMu, atd. Lepší tedy použít standardní příkazy než nestandardní COM objekty.

    OdpovědětVymazat
  4. Nechcete si fakt aspon přečist o co jde ve mnou zminovanem odkazu?A proč o start-process nejde ani nahodou?ja jsem myslel že jste si to četl proto nasledně komentař o tom že pomocí start-process to nejde,přečist první dvě věty! mojeho přispěvku a nasledně zasadit do kontextu.Kličove slova jsou prave iexplorer a komentař všude se uvadělo že je nejjednodušší otevirat v IE.
    start-process dejme tomu iexplore.exe jasně pišu že o to co vy si myslíte nejde ANI NÁHODOU takže podruhe ani náhodou nejde o toto...Odkazuji znovu na zdroj.nema cenu řešit zakladní omezení start-process přikazu u powershellu a proč v topmto připadě je to nevhodné.
    Důvody jsou dva - alternativní prohližeč pokud je nastavený jako default a a slovo object ze ktereho vyplývá všechno ostatní.
    Malá napověda start-process firefox.exe start-process chrome.exe ted je to doufam jasné.

    OdpovědětVymazat
  5. Pod http://blogs.microsoft.co.il/blogs/scriptfanatic/archive/tags/PowerShell/default.aspx se žádný článek nenachází. Je to jen seznam článků pod tagem PowerShell, nic víc. Kde si tedy co mám přečíst? Děkuji.

    OdpovědětVymazat
  6. Jde přesně o toto
    http://www.ravichaganti.com/blog/?p=1034
    Neboli někdy není špatné když člověk napiše o start-process iexplorer.exe nejde ani náhodou to vzít jako fakt.

    OdpovědětVymazat
  7. aha až ted reaguji na přispěvek z 07.43 takže odpovím detailně proč to není start-process neboli je to na vyše zminěných strankach.
    NIKOMU nejde o spuštění IE!!!!!To je celý vtip.A fakt start-process firefox.exe atd u mne firefox zakonitě nespustí ,proč je tak milionkrat popsané - viz opět odkaz a že pán ví o powershellu víc než všichni v čr dohramady pomalu.
    Abych to osvětlil http://img10.imageshack.us/i/firefoxts.png/
    Mam pokračovat proč v mojem připadě je to takto a v připadě hromady lidí taky?K tomu vracet se jake ma špeky a zakonitosti start-process celkem blog neslouží.Firefox pokud chci spustit pomocí FF musím to já udělat jinak a vyhody prace s objekty by šlo možna sledovat o nějaký post níže.Koneckonců je to to hlavní proč se mně FF libi - pokud spouštim ie tak ho spoustim napsanim systemnet s tim že se spouští bez ovladacích prvků a děla specializovanou činnost,je na to navazaných par věci ktere mam uložene v profilu pod funkcí systemnet.Takže tolik k vyhodě start-process a New-Object a proto ještě jednou a naposled o start-process iexplore.exe nejde ani nahodou v tomto postu...

    OdpovědětVymazat
  8. Mrk na updatovaný http://www.ravichaganti.com/blog/?p=1034. V prvním komentáři jsem o IE nepsal. Start-Process spustí url v default prohlížeči.

    OdpovědětVymazat
  9. imageshack ti nejede?Nespustí v mojem připadě.Zkus prolyzt proč univarzalní je můj postup a ne start-process,to že se spustí TOBĚ JE CELKEM IRELEVANTNÍ v teto souvislosti

    OdpovědětVymazat
  10. Navic evidentně nečtete moje přispěvky, odkaz přesně na to co postuji já o nějaký post výše.Takže celkem považuju za ztratu času jakykoliv další komentař pokud někam odkažu a nasledně odpověd mrkni na a ono je to totež.Pastnu link kde jasně je vidět že start-process firefox.exe nebude to prave ořechové - v mojem připadě,tak není o čem se dál bavit.
    Zkusim to jinak zaklad z manualu
    Nativní příkazy operačního systému, se vstupem uživatele.... Pro tento úkol můžeme použit start-process, nebo univerzální PowerShell cmdlet New-Object s-comObject parametrem.To univerzalní by bych podtrhl v teto souvislosti.Takže kdekoliv kde můžu použit PS NEW-Object vykona požadované,start-process ne,viz screen.
    Jak jsem řekl a asi pořád nerozumite o čem je řeč - když budu chtit spustim firefox nebo chrome napsánim třeba abrakabraka v powershellu a nic vic ,není to problem nebo napsanim jh nebo napsanim čehokoliv co nadefinuji,o tom není řeč.Podtrhl bych nejjednoduší - viz původní post,v noticce nemíním postovat milion ukazek proč to pro lidi bylo jednodušší a mají problem pokud to chtěji nacpat do něčeho kdy potřebuji spustit dejme tomu FF a proč platí konec přispěvku že existuje elegantnější možnost.
    O par postů niž najdete postup spust process - takže start-process až se vypne spust něco jineho - udělej něco jineho,takže asi start-process co děla nebude žadné tajemství.Mimochodem spouštim tam FF a chromium po sobě plus notepad.
    O co jde?takže script a nebudu napovidat proč je tam nikoliv start-process a dejme tomu chrome.exe ale kapku delší cesta..
    function get-stopstart
    {
    stop-process -processname firefox
    [diagnostics.process]::start("C:\Users\Doma\AppData\Local\Chromium\Application\chrome.exe").WaitForExit()
    start "C:\Program Files\Mozilla Firefox\firefox.exe"
    exit
    }
    ano takto spusti firefox na mojem a x dalších strojích - vyřizněte si coé se týká ff ve scriptu,přidaním adrtesy na zadané www.
    Pomocí start-process firefox.exe spustim kulovééééééé

    OdpovědětVymazat