DHJJ [Hatsune's Journal Japan] blog

Hatsune's Journal Japan blog

目次

Blog 利用状況

ニュース

最新ツイート

運営サイト

Hatsune's Journal Japan
DHJJ

著作など

資格など

OCP
MCP

書庫

日記カテゴリ

わんくま同盟

[WebSocket]System.Net.WebSocketsはWindows 7では動かない

時々忘れがちになるのでまとめておきますね。


System.Net.WebSocketsはWindows 7では動かない

System.Net.WebSocketsを使ってWebSocketクライアントを作成したとき、Windows 8/8.1やWindows 10では問題なく稼働しますがWindows 7では実行時エラーで異常終了します。

これは

https://msdn.microsoft.com/ja-jp/library/system.net.websockets.websocket.aspx

-------引用開始

一部のクラスで、 System.Net.WebSockets 名前空間は、Windows 7、Windows Vista SP2、および Windows Server 2008 でサポートされます。 ただし、クライアントとサーバー Websocket の唯一のパブリックの実装では、Windows 8 および Windows Server 2012となります。

-------引用終了

と注意書きがあるように、定義はあるけれどWindows 8以降じゃないと実装が伴っていないところがあるからです。

なぜ、こんなことがあるかといえば、Windowsのカーネルモードドライバであるhttp.sysを直接利用することでHTTP周りのオーバーヘッドを少なくしているのですが、Windows 7のhttp.sysがWebSocketに対応していないからです。

Windwos 7のメインストリームサポートは終了しています

https://www.microsoft.com/ja-jp/atlife/article/windows10-portal/eos.aspx

みんな大好きWindows 7は2009年10月22日にライフサイクルがスタートして2015年1月13日にメインストリームサポートが終了しています。延長サポートの終了こそ2020年1月14日ということでまだ先ですが、延長サポート期間である現在はセキュリティ更新はおこなわれますが、仕様変更や新機能のリクエストはサポート対象外となり、これからWindows 7のHTTP.sysにWebSocket実装が追加されることはほぼないと考えてよいでしょう。

ではどうすればいいのか

一つの解決策としては、HTTP.sysを使わないWebSocket実装のコードを書く、もしくは、HTTP.sysを使っていないライブラリをNuGetで探してくるというものがあります。

https://github.com/kerryjiang/WebSocket4Net

https://github.com/sta/websocket-sharp

NuGetでライブラリを探すときは、企業ユースを考えるならばSystem.Net.WebSocketsならば対応している認証PROXYがサポートされているかなどのチェックを十分に行う必要があるでしょう。なお、残念ながら上記2つについてもまだきっちり調べ終わっていません。


しかし、System.Net.WebSocketsであればHTTP.sysを使って「オーバーヘッドが少ない」=「性能がよいことが期待される」なのにWindwos 7をサポートすることでその利点を得られないという問題が生じてしまいます。

対象となる機能がWindows 7でも使えないといけないのか、もしくは、対象となる利用者がWindows 7をどれくらい使っているのかを見極めて判断するといいでしょう。

企業でもWindows 7からWindows 8.1やWindows 10への置き換え(少なくとも新規導入は8.1か10がデフォルト)が始まっている時期なので悩ましいところですね。


Windows 8以降かどうかをチェックする

Windows 7のときにはWebSocketを使った機能をdisableしたいときなどは、OSのバージョンチェックが必要になってきます。

対象はWPFとかWindowsフォームのときで、UWPやXamarin.Android、Xamarin.iOSのときは対象環境で動かないということはないのでチェックは不要です。

ですので実装時は

#if WPF

#endif

のようにifディレクティブを定義してその中でOSバージョンのメジャーバージョンとマイナーバージョンを取得してチェックします。

var searcher = new System.Management.ManagementObjectSearcher("SELECT * FROM Win32_OperatingSystem");
var os = searcher.Get().Cast().FirstOrDefault();
var major = 6;
var minor = 1;
if ((os != null) && (os["OsType"] != null) && (os["Version"] != null))
{
    if (os["OsType"].ToString() == "18")
    {
        major = new System.Version(os["Version"].ToString()).Major;
        minor = new System.Version(os["Version"].ToString()).Minor;
    }
}

Windows 10以上はmajor >= 10でよいのですが、Windows 8.xは、major == 6 && minor >= 2で判断しますので、その点だけ注意しましょう。

投稿日時 : 2017年10月7日 17:31

Feedback

# re: Internet Explorer 11 で、右クリックしたときに表示されるメニューで、Bingではなく、Google をデフォルトの検索エンジンとして設定するには? 2017/12/08 18:13 meadc

http://www.ups-tracking.us ups shipping
http://www.hermesoutlet.co/ hermes outlet bag
http://www.prada-outlet-online.com/ prada outlet online store
http://www.louis--vuitton.co louis vuitton on sale
http://www.jimmy-choo.com.au
me adc12.8

# re: [WebSocket]System.Net.WebSocketsはWindows 7では動かない 2017/12/19 15:27 connect2 for pc

connect2 for pc https://www.connect2downloadapp.com/
connect2 https://www.connect2downloadapp.com/
connect2 lenovo https://www.connect2downloadapp.com/connect2-lenovo-app-download/

# re: [WebSocket]System.Net.WebSocketsはWindows 7では動かない 2018/07/14 11:29 phoebesss

http://www.hydiapearls.com Coach Outlet Online
http://www.lumbergear.com Coach Factory Outlet
http://www.peoplesparkfilm.com Coach Factory Outlet
http://www.insite13.com Coach Outlet
http://www.artiswhyigetupinthemorning.com Coach Factory Outlet
http://www.wowinnovators.com Coach Factory Outlet
http://www.outletcoachonlinestores.com Coach Outlet Store Online
http://www.outletstorescoachonline.com Coach Outlet Store Online
http://www.chawengbayview.com Coach Factory Outlet
http://www.hamstersblog.com Coach Outlet Online
http://www.trudysfountainofyouth.com Coach Outlet Store
http://www.unpluggedtucson.com Coach Outlet Online
http://www.cpachpursesfactoryonline.com Coach Purses Outlet
http://www.factoryoutletonlinecoachstore.com Coach Factory Outlet
http://www.glamour-illustrated.com Coach Outlet Store
http://www.factoryonlinecoach.com Coach Factory Outlet

# re: 「ボタン押下」? 2018/07/24 16:26 chenlixiang

2018.7.24chenlixianghttp://www.christian--louboutin.net
http://www.louboutinshoes.org.uk
http://www.nike-airmax.de
http://www.michael-jordan.it
http://www.nikefactory.us.org
http://www.valentinoshoesonsale.us.com
http://www.truereligionoutlets.in.net
http://www.bottega.us.org
http://www.dolcegabbana.in.net
http://www.brazilworldcupjersey.com
http://www.jordans.co.nl
http://www.ralph--lauren.fr
http://www.converseshoes.org.uk
http://www.tods-shoes.us.com
http://www.pandora-jewelry.us.com
http://www.antoniobrownjerseys.com
http://www.fendisunglasses.us
http://www.occhiali-oakley.it
http://www.nikeoutletstoreonline.org
http://www.jordanxx9.us.com
2018.7.24chenlixiang

# re: INI 編集ツール IniModifier を作成してみる (1) 2018/08/20 12:45 chenlixiang

2018.8.20chenlixianghttp://www.onverseallstar.fr
http://www.bcbg.in.net
http://www.tory--burch.org
http://www.pandora-bracciali.it
http://www.dolceandgabbanasunglasses.com
http://www.manoloblahnik.us.com
http://www.airfoamposite.us
http://www.truereligion-jeans.co.uk
http://www.adidasoutletstores.us.com
http://www.jordans4.us.com
http://www.hermes-birkinbags.in.net
http://www.boseheadphones.us.com
http://www.linksoflondon.me.uk
http://www.michaelkors--canada.ca
http://www.alifeclothing.us
http://www.jordan6.in.net
http://www.michaelkorsoutlet.in.net
http://www.pandora--charms.in.net
http://www.karenmillen.org.uk
http://www.airzoompegasus.us
2018.8.20chenlixiangコメント:

# re: [WebSocket]System.Net.WebSocketsはWindows 7では動かない 2018/10/19 17:47 dongdong8

http://www.fitflopss.us.com
http://www.ferragamooutlet.us.com
http://www.ralphlaurensale.org.uk
http://www.uggstore.us.com
http://www.uggbuys.com
http://www.katespadehandbagssale.us.com
http://www.salvatoreferragamo.in.net
http://www.babyuggs.us.com
http://www.adidasflipflops.us.com
http://www.uggfactoryoutletstore.us.com
http://www.marceloburlon.us.com
http://www.nikesb.in.net
http://www.supra.us.org
http://www.uggformen.us.com
http://www.michaelkorsoutletcheapest.us.com
http://www.prada.us.org
http://nike.outletstore.us.com
http://www.uggclearance.us.com
http://www.pandora-jewelry.name
http://www.viscontipens.us.com
http://www.mikimotojewelry.com
http://www.suprashoesclearance.us.com
http://www.vansshoes.us.org
http://www.thenorthfacecom.us.com
http://www.ralphlauren.in.net
http://www.uggoutletsofficial.us.com
http://www.omegawatches.us.org
http://www.michael-korstaschen.ch
http://www.cheapnfljerseysnike.us.com
http://www.michaelkorsoutlet70off.us.com
http://www.cheapnhljerseysshop.us.com
http://www.jordanretro.us
http://www.airmax1.us
http://www.baseballbats.us.com
http://www.nikesshoes.us.com
http://www.uggbootsonsale65off.us.com
http://www.coachoutletfactoryofficial.us.com
http://www.airmax97.org
http://www.leejeans.us.com
http://www.burberrysale.us.org
http://www.camisetasdefutbolbaratases.es
http://www.oakleysunglassewholesale.us.com
http://www.ray-banssunglasses.org.uk
http://www.persolsunglasses.us.com
http://www.adidasyeezy350boost.us.com
http://www.y3shoes.us.com
http://www.pandoraukcharms.co.uk
http://www.oakley-vaultsunglasses.us.com
http://www.michaelkorsshandbags.us.com
http://www.airjordanretro.fr
http://www.uggsofficialsite.in.net
http://www.raybansunglassesoutlet.net.co
http://www.flipflops.me.uk
http://www.uggsales.us.com
http://www.truereligionsale.com.co
http://www.maxairnike.us.com
http://www.flops.us.com
http://www.vans.us.org
http://www.jordan5.us
http://www.oakleysunglassescanada.ca
http://www.russellwestbrook.us.com
http://www.mauijimsunglasses.us.com
http://www.soldier11.com
http://www.malone-souliers.org
http://www.thehundredsclothing.com
http://www.jordan3.net
http://www.nikefree.net
http://www.nikekd10.us.com
http://www.toryburchhandbags.us.org
http://www.airmaxnl.nl
http://www.beatsbydrdresolo.us
http://www.adidasultra-boost.us.com
http://www.nikeoutletus.us.com
http://www.shopbasketballshoes.us.com
http://www.outletuggsale.us.com
http://www.nikekd8.com

# dongdong8 2018/11/21 13:49 wengdongdong053@outlook.com

http://www.kobe11.in.net
http://www.adidasstoreuk.me.uk
http://www.cheapnfljerseysfree.us.com
http://www.huarache.us.com
http://www.nikeuktrainers.me.uk
http://www.yoga-pants.us.com
http://www.adidasoutletadidas.us.com
http://www.coachhandbagsfactoryoutletonline.us.com
http://www.lebron13.org
http://www.manoloblahnikshoes.us.com
http://www.coachoutletstoreonlineclearances.us.org
http://www.vetementsclothing.com
http://www.nikeoff.com
http://www.ralphlaurens.fr
http://www.northfaceoutlet.us.com
http://www.coachonline.us.org
http://www.nikeairforce1.net
http://www.rayban.net.co
http://www.nikeoutletstoreonline.us.com
http://www.nikeblazer.fr
http://www.levisjeans.us.com
http://www.pandorajewelrysoutlet.us.com
http://www.tory-burchshoes.us.com
http://www.cartierjewelry.us.com
http://www.swarovskirings.us.com
http://www.tiffanyjewelrybracelet.us.com
http://www.toryburchsandals.us.com
http://www.lululemon.in.net
http://www.nikestores.us
http://www.suprashoesclearance.us.com
http://www.mkpurse.us.com
http://www.kanyeyeezyshoes.us.com
http://www.uggbootsonsale75off.us.com
http://www.michaelkors.org.uk
http://www.underarmouroutletclearance.com
http://www.ralphlauren-poloshirts.me.uk
http://www.jordan8.net
http://www.uggsaustralia.in.net
http://oakley.sunglassesoutlet.us
http://www.canadagoose-sale.ca
http://www.taghuer.us.com
http://www.camisetasdefutbolbaratases.es
http://www.adidasnmdoutlet.us.com
http://www.tomfordsunglasses.us.com
http://www.canada-goosejacket.ca
http://www.coachoutletonlinestore.ca
http://www.skecherssandals.us.com
http://www.nobisjackets.us.com
http://www.michaelkorsoutletcheapest.us.com
http://www.newbalanc.in.net
http://www.uggforkids.us.com
http://www.converseshoesoutlet.us.com
http://www.ray-banssunglasses.org.uk
http://www.uggfactoryoutletstore.us.com
http://www.adidasjeremyscott.in.net
http://www.miumiusunglasses.com
http://www.michaelkorsoutletonsale.us.com
http://www.pradahandbagsoutlet.us.com
http://www.katespadehandbagsoutlet.us.org
http://www.stephen-curryshoes.us.com
http://www.shopbrandbelts.com
http://www.outletcanadagoosesale.us.com
http://www.nikemercurial.us
http://www.spaldingbasketball.us
http://www.arcteryxsclothing.us.com
http://www.truereligionoutletjeans.us
http://www.coachoutletstoreonlineofficial.us.com
http://www.uggstores.us.com
http://www.newbalancesandals.us.com
http://www.swarovskijewelryoutlet.us.com
http://www.shoecarnival.us.com
http://www.michaelkorsoutlet70off.us.com
http://www.cheapjordansshoes.in.net
http://www.nikeoutletus.us.com
http://www.uggsboots.org
http://www.longchampoutlet-store.us.com
http://www.viscontipens.us.com
http://www.juicycoutureoutlet.us.com
http://www.coachcom.us.com
http://www.mooseknucklesjackets.us.com
http://www.wholesaleoakleysunglasses.us.org
http://www.adidaswings.name
http://www.macmakeup.org.uk
http://www.nikelunarglide.us
http://www.audemarspiguet.us.com
http://www.coachoutletstore.eu.com
http://www.pandorajewelry-canada.ca
http://www.hardenvol2.us.com
http://www.supreme-newyork.com
http://www.balenciagashop.us.com
http://www.linksoflondonuk.me.uk
http://www.uggsstoreoutlet.us.com
http://www.adidasoutlets.org
http://www.balenciaga-triples.us.com
http://www.coachoutletonline-sale.us.com
http://www.underarmourshoes.in.net
http://www.nikedunksb.us
http://www.supremeclothing.us.com
http://www.katespade-outlet.in.net
http://www.newcoachoutlet.us.com
http://www.longchampsacsoldes.fr
http://www.mulberryhandbags.us.com
http://www.nikeshox.in.net
http://www.nikeairmax.us.org
http://www.michaelkorsoutletsoff.us.com
http://www.monsterheadphones.us.com
http://www.fitflopsoutlet.us.com
http://www.omega.in.net
http://www.cheapnfljerseys.in.net
http://www.airforce1.in.net
http://www.canadagoosejacketsonsale.us.com
http://www.christianlouboutinsoutlet.us.com
http://www.tevasandals.us.com
http://www.raybansunglassesoutlet.net.co
http://www.woolrichjackets.us.com
http://www.kevindurantshoes.us.com
http://www.tiffanyandcojewelry.us.com
http://www.nikekd10.us.com
http://www.burberrysale.us.org
http://www.burberry-outlet-stores.us.com
http://www.coachfactoryoutlet-online.eu.com
http://www.onitsukatigershoes.us.com
http://www.pelikanpens.us.com
http://www.uggbuys.com
http://www.x-largeclothing.com
http://www.uggssaleoutlet.org
http://www.russellwestbrook.us.com
http://www.montblanccom.us.com
http://www.hermesoutlets.us.com
http://www.outletsuggstores.us.com
http://www.uggboots.mex.com
http://www.stephcurryjerseys.com
http://www.soccerjersey.eu
http://www.russellwilsonjerseys.us
http://www.victoriassecret.us.com
http://www.ralphlaurenjeans.us
http://www.converseshoes.us.org
http://www.fila.us.com
http://www.lebronjamesjerseys.us.com
http://www.raybansunglassesoutlet.co.uk
http://www.pandorajewelry.us.org
http://www.uggoutletstore.us.org
http://www.airmax1.us
http://www.coach-factoryonline.us.org
http://www.supremeclothing.me.uk
http://www.jordan6.net
http://www.jordan4.net
http://www.christianlouboutinshoessale.org.uk
http://www.adidasyeezy350.us.com
http://www.stuartweitzmanshoes.us.com
http://www.cheapmichaelkorshandbags.us.org
http://www.converse.me.uk
http://www.adidasflipflops.us.com
http://www.thenorthfacejackets.us.org
http://www.nikeairmax90.us.org
http://www.nfl-jersey.in.net
http://www.ralphlaurenfactorystore.us.com
http://www.nikeairmax90.com.de
http://www.nikeepicreactflyknit.us.com
http://www.dansko.us.com
http://www.mauijimsunglasses.us.com
http://www.christianoronaldojersey.com
http://www.supremeparis.fr
http://www.airjordan-14.us
http://www.adidasoutletstores.com
http://www.nikeshoesnike.us.com
http://www.oakleysunglasses.ru
http://www.pandorajewelrycanada.ca
http://www.fitflopss.us.com
http://www.vans.us.org
http://www.versaceclothing.com
http://www.outletmichaelkorsoutletonline.us.com
http://www.lightup-shoes.us.com
http://www.redbottoms.us.org
http://www.uggbootsshop.com
http://www.nhl-hockeyjerseys.us.com
http://www.ralph-laurenpolouk.org.uk
http://www.maccosmetics.org.uk
http://www.cheapsoccerjersey.us.com
http://www.fingerlingsmonkey.org
http://www.hollisteroutlet.us.org
http://www.soldier11.com
http://www.yeezydesertrat500.us.com
http://www.adidassuperstarshoes.us.com
http://www.adidasslides.us.com
http://www.versacebags.us.com
http://www.ralphlaurensale.org.uk
http://www.maillotdefootfrance.fr
http://www.uggs-bootsoutlet.us.com
http://www.louboutinoutlets.us.com
http://www.uggbootssale.in.net
http://www.uggsofficialsite.in.net
http://www.adidasyeezy350boost.us.com
http://www.lebron15.us.org
http://www.babyuggs.us.com
http://www.airmax95.us.org
http://www.jordans.in.net
http://www.ralplaurenuk.org.uk
http://www.burberryoutlet.com.co
http://www.fitflopssale.org.uk
http://www.uggsslippers.us.org
http://www.coachoutlet-factory.us.com
http://www.timberlandoutlet.us.org
http://www.christianlouboutinoff.us
http://www.lebronambassador10.us.com
http://www.jordan-femmepascher.fr
http://www.northfaceoutletstore.us.org
http://www.cheapbestnbajerseys.us.com
http://www.air-jordanpascher.fr
http://www.ray-bansunglassesoutlet.com.co
http://www.louboutins.me.uk
http://www.wwwnorthface.us.com
http://www.nikehyperdunks.com
http://www.beatsbydrdresolo.us
http://www.nikeflightbonafide.us
http://www.coachoutlet.net.co
http://www.ferragamooutlet.us.com
http://www.burberryoutlet-canada.ca
http://www.airjordan.me.uk
http://www.raybansunglassesforwomen.us.com
http://www.truereligion-jeans.us
http://www.pumasoutlet.us.com
http://www.hervelegerdresses.us.com
http://www.fussballtrikotsshop.de
201811.21wengdongdong

# タイトル 2019/04/02 12:42 qqq

http://www.detroitlionsjerseys.us
http://www.christianlouboutinoutletsale.us.com
http://www.adidasnmdad.us.com
http://www.coachfactory-outletonline.in.net
http://www.juicycoutureoutlets.us.com
http://www.coachoutletsonlines.us.com
http://www.cheapmlbjerseys.net
http://www.airjordan12.us
http://www.truereligionjeans-sale.us.com
http://www.coachoutletsstore.us.com
http://www.coach-factoryoutletstore.us.comqqq

# Balenciaga 2019/04/03 16:52 prgposwsbcr@hotmaill.com

cxkyfal,A very good informative article. I've bookmarked your website and will be checking back in future!

# Yeezy 2019/04/09 2:55 sdkrktwb@hotmaill.com

xokwva Adidas Yeezy,Thanks a lot for providing us with this recipe of Cranberry Brisket. I've been wanting to make this for a long time but I couldn't find the right recipe. Thanks to your help here, I can now make this dish easily.

# Yeezys 2019/04/12 0:50 lzbcbg@hotmaill.com

yrfsxq New Yeezy,This website truly has alll of the information and facts I wanted about this subject and didn?t know who to ask.

# Yeezy 500 2019/04/14 12:49 resvqpa@hotmaill.com

rdmbrp,Thanks a lot for providing us with this recipe of Cranberry Brisket. I've been wanting to make this for a long time but I couldn't find the right recipe. Thanks to your help here, I can now make this dish easily.

# Nike Vapormax Plus 2019/04/20 13:18 orylanp@hotmaill.com

Apple does not offer an advertising version of the subscription service, and Apple currently has more than 50 million paying users worldwide. But Apple’s global growth is growing at a rate of 2.4% to 2.8%, while Spotify’s growth is 2% to 2.3%.

# Nike Air Max 270 2019/04/23 11:45 ykoukz@hotmaill.com

lmqrwkn,Very informative useful, infect very precise and to the point. I’m a student a Business Education and surfing things on Google and found your website and found it very informative.

# NFL Jerseys Cheap 2019/04/28 21:51 guzwyq@hotmaill.com

55-year-old actor Nicolas Cage is currently going through a rough time. After filing for an annulment his wife of just four days, the National Treasure star and actual national treasure has had to find ways to blow off some steam.

# Nike 2019/05/05 10:45 evhxir@hotmaill.com

But that's where they are as they approach Game 6 against the Clippers, who have lost three of the first five games but never once shown any sign of surrender.

# Cheap NFL Jerseys 2019/05/16 16:30 wuglmsb@hotmaill.com

http://www.pandorarings-jewelry.us/ Pandora Rings

タイトル  
名前  
Url
コメント