2014年2月28日金曜日

OneDriveのページが酷い異なっている

こんなページが表示されるんだけど、、、、






OneDrive100GBが欲しいなぁ


2014年2月27日木曜日

Visual Studio 2013+TypeScript+LESS+PhoneGap(cordova):LESS file does not load (404)

LESSを使って開発を始めたら、
エラー:LESS file does not load (404)
が発生して困った。

ちょっとあきらめ気味だったけど、ぐぐったら分かりました。

対応は、web.configに下記のMINEを追加してクライアントにダウロードできるようにした。
  <system.webServer>
    <staticContent>
      <mimeMap fileExtension=".less" mimeType="text/css" />
    </staticContent >
  </system.webServer>

以上

2014年2月26日水曜日

Visual Studio 2013+PhoneGap+TypeScript+SignalR(Web&Nativeアプリ):SignalRのアプリを作った時のエラー対処について

SignalRを使うサイトを作ってみた。
そのときに発生したエラーと対策をまとめる。

1)コードのエラー
エラー 2 'System.Web.Routing.SignalRRouteExtensions.MapHubs(System.Web.Routing.RouteCollection)' は古い形式です:
'Use IAppBuilder.MapSignalR in an Owin Startup class. See http://go.microsoft.com/fwlink/?LinkId=320578 for more details.' O:\20140225_vs2013_signalR\WebApplicationSignalRSample\WebApplicationSignalRSample\Global.asax.cs 16 4 WebApplicationSignalRSample

http://www.asp.net/signalr/overview/signalr-20/getting-started-with-signalr-20/upgrading-signalr-1x-projects-to-20

修正して、Global.asaxからStartupクラスへSignalRの登録を変更


2)コンパイルのエラー
型 'System.IO.FileLoadException' の例外が Microsoft.AspNet.SignalR.Core.dll で発生しましたが、ユーザー コード内ではハンドルされませんでした
追加情報:ファイルまたはアセンブリ 'Microsoft.Owin, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'、またはその依存関係の 1 つが読み込めませんでした。見つかったアセンブリのマニフェスト定義はアセンブリ参照に一致しません。 (HRESULT からの例外:0x80131040)

NuGetパッケージマネージャで、SingnalRとjQueryのアップデイトを実施

最後にエラーが出たので、htmlのscriptタグのsrc属性のバージョンを変えて対応完了し、ビルドが通った。
(nodejsのsocket.ioと比べるとかなり楽でフイタI


3)開発環境のIIS Express 8.0は順調に動いた。
そして、テストは、Android、iOS、Windowsで実施しようとサーバに発行してみたら、動作しない。
ブラウザのエラーは
Failed to load resource: the server responded with a status of 404 (Not Found) http://hogehoge.com/negotiate?connectionData=%5B%7B%22name%22%3A%22echo%22%7D%5D&clientProtocol=1.3&_=1393377622430
event.returnValue is deprecated. Please use the standard event.preventDefault() instead.

が出ており、どうやらIIS 7.5では、WebSocketが動作しないようだ。
で、はまったしまい、諦めた。下記の対策を入れても動かない、、、、
http://blogs.msdn.com/b/timlee/archive/2013/03/21/hosting-a-signalr-application-on-windows-2008r2-and-iis-7-5.aspx#config
http://www.asp.net/signalr/overview/signalr-20/troubleshooting-and-debugging/troubleshooting

2014年2月22日土曜日

Visual Studio 2013でSPA(Single Page Application)開発(Type Script)

backbone+HTML5+CSS+JavaScriptでそれなりの規模の開発をしたことが有るのですが、そのときにJavaScriptに少しだけ苦しめられました。

もっと、楽が出来ないかとTypeScriptを使ってみた。
開発ツールは、Visual Studio 2013

環境作成
1)TypeScript for Visual Studio 2012 and 2013 のインストール
http://www.microsoft.com/en-us/download/confirmation.aspx?id=34790

2)「tag:typescript」でNuGetパッケージマネージャで検索する
そうすると懐かしいJavaScriptのライブラリ、フレームワーク群が出てくる

ここで規模や特性に合わせて定義ファイルをチョイスして環境を作成する。



Windows Server 2008R2 指定されたデバイス、パス、またはファイルにアクセスできません。アクセス許可がない可能性があります。が出てCD-ROMからインストールができない。

下記のエラーが発生してどうしてもCD-ROMからインストールが出来ない。

[Window Title]
F:\
[Content]
指定されたデバイス、パス、またはファイルにアクセスできません。アクセス許可がない可能性があります。
[OK]


・ローカルセキュリティポリシー
・CD-ROMサービスのレジストリ
・パス
などなどをいろいろと見てみましたが、どうしても原因がわからない。
ググってもわからない。
結果、daemon toolsをインストールしてisoイメージを使ってそこからインストールしました。

未だに原因は不明です。

Visual Studio 2013+TypeScript:エラー 1 "tsc.exe" はコード 1 を伴って終了しました。が発生するが原因がどこにもない。

JavaScript用のLinqを追加したとあとにVisual Studioを再起動しなかったことが原因でした。

Visual Studioを再起動するとlinq.TypeScript.DefinitelyTypedでエラーが発生していた。

原因の元がわかったので、このパッケージを削除してビルドを通しました。

エラー詳細が出てこなくてビビりました。

2014年2月20日木曜日

Windowsでmacで作成したUSBメモリを初期化する方法

Windowsでmacで作成したUSBメモリをフォーマットしたときの操作メモ


Welcome to kiyo7447 Command Processor [Version 1.0.2]
(C) Copyright 1997-2014
15:07:05.49>diskpart
Microsoft DiskPart バージョン 6.1.7601
Copyright (C) 1999-2008 Microsoft Corporation.
コンピューター: DRIFTER
DISKPART> list disk
  ディスク      状態           サイズ   空き   ダイナ GPT
  ###                                          ミック
  ------------  -------------  -------  -------  ---  ---
  ディスク 0    オンライン           894 GB      0 B
  ディスク 1    オンライン           465 GB  1024 KB
  ディスク 2    オンライン            14 GB    14 GB        *
DISKPART> select disk 2
ディスク 2 が選択されました。
DISKPART> list partition
  Partition ###  Type                Size     Offset
  -------------  ------------------  -------  -------
  Partition 1    システム               200 MB    20 KB
DISKPART> select partition 1
パーティション 1 が選択されました。
DISKPART> delete partition
仮想ディスク サービス エラー:
force protected パラメーターを設定しないと、保護されたパーティションは削除できま
せん。
DISKPART> help delete partition
    フォーカスされているパーティションを削除します。
構文:  DELETE PARTITION [NOERR] [OVERRIDE]
    NOERR       スクリプト専用です。エラーが発生しても、DiskPart は
                エラーが発生しなかったかのようにコマンドの処理を続けます。
                NOERR パラメーターがない場合は、DiskPart はエラー コードを
                生成して終了します。
    OVERRIDE    DiskPart で、種類に関係なく任意のパーティションを削除
                できます。通常、DiskPart では、既知のデータ パーティション
                の削除のみを許可します。
    システム パーティション、ブート パーティション、あるいはアクティブな
    ページング ファイルまたはクラッシュ ダンプ (メモリ ダンプ) ファイルを含む
    パーティションは、削除できません。
    この操作を完了するには、パーティションを選択する必要があります。
    パーティションは、ダイナミック ディスクから削除することも、ダイナミック
    ディスク上に作成することもできません。
例:
    DELETE PARTITION
DISKPART> delete partition override
DiskPart は選択されたパーティションを正常に削除しました。
DISKPART>

mysql エラー:ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3

ストアドを登録したらこのエラーが出てハマった。
なんてことはないデリミタの設定が誤っていたのだ。
下記のようにして回避
--mysql
delimiter //
CREATE PROCEDURE test()
BEGIN
DECLARE a INT;
DECLARE i,b INT DEFAULT 1;
WHILE i <= 10000000 DO
 IF i % 10000 = 0 THEN
  SET b = i;
 END IF;
 INSERT INTO t1(b) VALUES(b);
 SET i = i + 1;
END WHILE;
END//
delimiter ;
call test();

2014年2月3日月曜日

SQL Server 1000万件のデータ追加

SQL Server 1000万件のデータを追加するサンプル


USE kiyo
CREATE TABLE t1
 ( a int IDENTITY(1, 1) PRIMARY KEY
 , b int
 , c char(200) DEFAULT 'dummy1'
 , d char(200) DEFAULT 'dummy2' )
--↓の処理は32分かかります。1000万件INSERTは32分・・・遅くない?
SET NOCOUNT ON
DECLARE @i int = 1, @b int = 1
WHILE @i <= 10000000
 BEGIN
 IF @i % 10000 = 0 SET @b = @i
 INSERT INTO t1(b) VALUES(@b)
 SET @i += 1
 END
SET NOCOUNT OFF
--Cool!
SET STATISTICS TIME ON
--Cool!
SET STATISTICS IO ON
--1秒で終わる
SELECT b, MAX(a) FROM t1(nolock)
 GROUP BY b
/*
SQL Server の構文解析とコンパイルの時間:
 CPU 時間 = 0 ミリ秒、経過時間 = 0 ミリ秒。
(1001 行処理されました)
テーブル 'Worktable'。スキャン回数 0、論理読み取り数 0、物理読み取り数 0、先行読み取り数 0、LOB 論理読み取り数 0、LOB 物理読み取り数 0、LOB 先行読み取り数 0。
テーブル 't1'。スキャン回数 5、論理読み取り数 528279、物理読み取り数 0、先行読み取り数 0、LOB 論理読み取り数 0、LOB 物理読み取り数 0、LOB 先行読み取り数 0。
 SQL Server 実行時間: CPU 時間 = 4694 ミリ秒、経過時間 = 1285 ミリ秒。
*/

-- 上位 10万件を確認
--SELECT TOP 100000 * FROM t1 (nolock)

begin tran
--1000万件の更新は1分39秒と遅い
update t1 set c = 'hogehoge', d = 'uriuri'
/*
SQL Server の構文解析とコンパイルの時間:
 CPU 時間 = 0 ミリ秒、経過時間 = 2 ミリ秒。
SQL Server の構文解析とコンパイルの時間:
 CPU 時間 = 0 ミリ秒、経過時間 = 0 ミリ秒。
 SQL Server 実行時間: CPU 時間 = 13744 ミリ秒、経過時間 = 99520 ミリ秒。
(10000000 行処理されました)
*/
SELECT TOP 100000 * FROM t1 (nolock)
--1000万件の更新をロールバックする時間は、
rollback tran


2014年2月1日土曜日

Windows エクスペリエンスインデックスが低いので、ソフトウェアチューニングでパフォマンスを上げてみる。

対象ハード
ThinkPad T420s(改)
 ・ハードディスクは、
  crucial CT960M500SSD1.PK01 960GB(二代目)
  (初代は、Intel® SSD 320 Series の300GBでした。)
  と
  Hitachi HT725050A9A364  7200rpm500GB
 ・メモリは、16GBへ増設済み
  (保証は8GBまでですが、チップセットの仕様より16GBへ換装)

まずはチューニング前

 
プロセッサ:7.1
メモリ:7.5
グラフィックス:5.9
ゲーム用グラフィックス:6.3
プライマリハードディスク:7.8
合計:34.5

・・・・低い
メモリもHDDも上げたのに、、、、
ディスク関連のチューニング
 ⇒色々と実施
  ⇒結果:7.8が7.9へ、、、但し他が遅い
 
グラフィックスとゲーム用グラフィックスのチューニング
⇒最新のドライバを入れて
  ⇒パラメータチューニング
 
ああぁ、なぜかCPUとメモリが遅い
⇒CPUとメモリへの電力量を調整
   ⇒やっと元に戻った
 
 
プロセッサ:7.1
メモリ:7.5
グラフィックス:6.3
ゲーム用グラフィックス:6.3
プライマリハードディスク:7.9
合計:35.1
⇒1時間かけて0.6のアップとは、、、
結論:ThinkPadT420sでは、第二世代のCPUやグラフィックスが弱いので、パソコンを買え買えたほうが安いですね。

補足
↓次の次の世代のThinkPadT440sと比較すると、、、MEMORYが負けている、、、
http://thehikaku.net/pc/lenovo/ThinkPad-T440s.html#game
 ⇒ぐぬぬぬ
   ⇒メモリを0.1稼ぐ方法を次回はチューニングしたいと考えている。