掲示板お問い合わせランダムジャンプ



この広告は30日以上更新がないブログに表示されております。 新しい記事を書くことで広告を消すことができます。

Top Index

2014年04月13日
DLLをNuGetで公開しよう
リンク集です。

MSDN
NuGet でプロジェクト ライブラリを管理する

qiita.com
プロジェクトをNugetパッケージにして公開する

しばやん雑記
NuGet パッケージを作って公開する

Do Design Space
NuGet パッケージを作成して公開する

蒼の王座・裏口
Nugetがより快適になるNuget Package explorer

neue cc
NuGetパッケージの作り方、或いはXmlエディタとしてのVisual Studio

TFC
NuGetパッケージを企業内、チーム内だけで配布する方法・・・を超早でまとめ

@IT
特集:.NET開発の新標準「NuGet」入門(後編)
NuGetをさらに便利に使う方法とパッケージの公開


qiitaがわかりやすいですかね。
@ITは入門編っていうタイトルから読んでなかったですが副題がそれっぽいので後で読んでおこう。

付け加えるなら、
NuGetにパッケージをアップする前にいNuGet Package Explorerを使って、
パッケージファイルを見てみるといいでしょう。

詳しいことはわかりませんが、NuGet Package Explorerでないと
ライセンスのリンクが付けられなかったり、
複数の.netバージョンのサポートができなかったり
するような気がします。

続きを読む ...
 
[ 投稿者:mk3008 at 00:51 | VS.NET Tips | コメント(0) | トラックバック(0) ]

2014年04月06日
Git VisualStudio用無視ファイル設定
.git/info/excludeに以下の内容を突っ込んでおけばOK
https://github.com/github/gitignore/blob/master/VisualStudio.gitignore

[ 投稿者:mk3008 at 13:20 | VS.NET Tips | コメント(0) | トラックバック(0) ]

2014年03月30日
TripleDESで文字列を暗号、復号化する
tdes

VS2010+.NET4


元ネタは「10 行でズバリ !! 暗号化 (VB)」です。
http://code.msdn.microsoft.com/windowsdesktop/10-VB-b16356b0

ほぼこのサンプルで問題ないのですが、暗号化した文字を無理やりユニコードで表示しようと警告が出たような気がします。(うろ覚え)
ですので、その辺をいじくってみました。
以下、要点のソースコード。

続きを読む ...
 
[ 投稿者:mk3008 at 14:30 | VS.NET Tips | コメント(0) | トラックバック(0) ]

Click Once 発行メモ書き
VS2010+.NET4

・手動で発行する手順
http://msdn.microsoft.com/ja-jp/library/vstudio/xc3tc5xx(v=vs.100).aspx
こちらの手順でやれるらしいが結構面倒。

・VisualStudioの発行ウィザードを使う(発行場所をFTPで指定)
普通はこちら。
即時リリースとなってしまうので、納品物を受け渡ししにくい

・VisualStudioの発行ウィザードを使う(発行場所をローカルで指定)
これが無難。
発行場所を「publich\」にしておき、同フォルダに発行をする。

ディレクトリ構造はこんな感じ

例:アプリケーション名が「OfficeTheme」の場合
publish
├─OfficeTheme.application (a)
├─publish.htm (b)
├─setup.exe (c)
└─Application Files (d)
├─OfficeTheme_1_0_0_0 (e)
│ ├OfficeTheme.application (a')
│ ├OfficeTheme.exe.deploy
│ └OfficeTheme.exe.manifest
├─OfficeTheme_1_0_0_1
├─OfficeTheme_1_0_0_2
├─OfficeTheme_1_0_0_3
├─OfficeTheme_1_0_0_4
├─OfficeTheme_1_0_0_5
├─OfficeTheme_1_0_0_6
├─OfficeTheme_1_0_0_7
├─OfficeTheme_1_0_0_8
└─OfficeTheme_1_0_0_9

(a) ClickOnce配置マニフェストファイル
発行バージョン情報が格納されている設定ファイル。
「(a')」に同名のファイルが存在するが、「(a)=最新バージョンの(a')」という関係。
つまり、上述のような発行をしている場合、
「\OfficeTheme.application」と「\Application Files \OfficeTheme_1_0_0_9\OfficeTheme.application」は同一。

詳細は後述するがバージョンアップやロールバックするときに使用できる。

(b) ダウンロードページ
「setup.exe」へのリンクが記載されている。

(c) インストーラー
「(a)」のファイルを元にインストールを行う。

(d) アプリケーションのファイル置き場

(e) バージョンごとのファイル置き場


運用(手動発行)
・ローカルの「publish」フォルダに発行する(この時の発行バージョンは1_0_0_10だったとする)
・「(a)、(b)、(c)」と、バージョン1_0_0_10の(e)」を納品物とする。
 (b)は単なるHTMLなのでは初回のみ納品物に含め、それ以降は不要。
 (c)はバイナリのためよくわからないが、初回のみ納品物に含め、それ以降不要な気もする。
・「(a)、(b)、(c)、(e)」をFTPソフトを使用してアップロード。

運用(ロールバック)
・「(a)」をロールバックしたいバージョンの「OfficeTheme.application」で上書き
 これだけ
 幸いなことに(e)のフォルダに「OfficeTheme.application」がバックアップされているので、
 特別な配慮をしなくても対応可能。
[ 投稿者:mk3008 at 02:06 | VS.NET Tips | コメント(0) | トラックバック(0) ]

2011年08月13日
VisualStudioに字下げ整形を再実行させるショートカットキー(備忘録)
(VisualStudio2010で検証)
xaml、xmlなどを編集していると、結構な頻度で字下げがぐちゃぐちゃになりますよね?
これを毎回手で直すのは大変ですが、以下のVisualStudioのショートカットキーを利用すると一発で整形されます。

  Ctrlキー+Kキー を押した後、 Ctrlキー+Dキー を押す

ショートカットキーを2個組み合わせるという、あまりなじみのない操作ですが効果は絶大ですのでぜひ使ってください。
[ 投稿者:mk3008 at 10:18 | VS.NET Tips | コメント(0) | トラックバック(0) ]

2011年06月19日
Action(Of T) デリゲート実例サンプル|DB接続処理を汎用的にしよう
[.NET 4][VS2010][VB] ※.NET4以前のバージョンでは記述できない可能性があります。注意してください。

デリゲートとは、関数を変数のように扱うことです。
宣言は以下のように行い、

'処理を1行で記述する場合
Dim x As Action = Sub() Debug.Print("Sample")
'処理を複数行で記述する場合
Dim y As Action = Sub()
Debug.Print("Sample")
End Sub
'引数を利用する場合
Dim z As Action(Of String) = Sub(args As String) Debug.Print(args)

呼び出すときには以下のようにします。

x.Invoke()
y.Invoke()
z.Invoke("Sample")

で、何に利用できるのか?というと以下のようなことができます。
関数を変数のように扱うことができる。
他の関数に渡すことで、部分的なロジックを差し替えることができる。

まだピンとこないと思いますので、DB接続処理をサンプルに実例を挙げてみます。


・ボタン1をクリックすると、DBサーバーのシステム日付をデバッグウインドウに表示する。
・ボタン2をクリックすると、Employeesテーブルの行数をデバッグウインドウに表示する。
 ※処理内容に特に意味はないです。
  脳内で主キー検索、名前検索などの実用的なものに置き換えてください。

これを単純にコード化すると以下のようになります。

Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click
Using cn As New SqlClient.SqlConnection("Data Source=localhost\SQLEXPRESS;Initial Catalog=Northwind;Integrated Security=True;Pooling=False")
cn.Open()
Dim cmd As IDbCommand = cn.CreateCommand
cmd.CommandText = "SELECT CURRENT_TIMESTAMP"
Debug.Print(cmd.ExecuteScalar)
End Using
End Sub

Private Sub Button2_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button2.Click
Using cn As New SqlClient.SqlConnection("Data Source=localhost\SQLEXPRESS;Initial Catalog=Northwind;Integrated Security=True;Pooling=False")
cn.Open()
Dim cmd As IDbCommand = cn.CreateCommand
cmd.CommandText = "SELECT COUNT(*) FROM EMPLOYEES"
Debug.Print(cmd.ExecuteScalar)
End Using
End Sub

ボタン1とボタン2で全く同じDB接続処理を書いてますが、中身(発行するクエリ)が違うのでサブルーチン化(関数化)できません。
「SqlConnectionのインスタンスからコネクションの接続まで」をサブルーチン化することも可能ですが、
Using構文が使えなくなるので手動でDisposeする必要が出てきてしまい、記述漏れのことを考えるとベストと言いがたいです。

※接続文字列を定数化して記述ミスを防ぐというのはアリですが、それは一旦置いときます。

メインルーチンでIDbCommandクラスを生成し、それを関数(コネクション処理と引数のコマンドを実行する)に投げるという方法も考えられます。
が、複数のコマンドを1回の接続のうちに実行したい事例がでてきたら破綻してしまいます。

※そもそも戻り値の型を何にするかで揉めそうですが。

そこで、デリゲート(関数の変数化、ロジックの差し替え、委譲)の出番です。

続きを読む ...
 
[ 投稿者:mk3008 at 11:53 | VS.NET Tips | コメント(0) | トラックバック(0) ]

2009年02月07日
VS上のWEBカラー一覧(メモ書き)
Visual Studio 上から選択できるWebカラーの並び順と、ARGB値です。 毎回調べるのは面倒なので、データ化しておきます。。。
HEXDEC
ARGBARGB
#00FFFFFF0FFFFFF0255255255Transparent
#FF000000FF000255000Black
#FFFFFFFFFFFFFFFF255255255255White
#FF696969FF696969255105105105DimGray
#FF808080FF808080255128128128Gray
#FFA9A9A9FFA9A9A9255169169169DarkGray
#FFC0C0C0FFC0C0C0255192192192Silver
#FFD3D3D3FFD3D3D3255211211211LightGray
#FFDCDCDCFFDCDCDC255220220220Gainsboro
#FFF5F5F5FFF5F5F5255245245245WhiteSmoke
#FF800000FF800025512800Maroon
#FF8B0000FF8B0025513900DarkRed
#FFFF0000FFFF0025525500Red
#FFA52A2AFFA52A2A2551654242Brown
#FFB22222FFB222222551783434Firebrick
#FFCD5C5CFFCD5C5C2552059292IndianRed
#FFFFFAFAFFFFFAFA255255250250Snow
#FFF08080FFF08080255240128128LightCoral
#FFBC8F8FFFBC8F8F255188143143RosyBrown
#FFFFE4E1FFFFE4E1255255228225MistyRose
#FFFA8072FFFA8072255250128114Salmon
#FFFF6347FFFF63472552559971Tomato
#FFE9967AFFE9967A255233150122DarkSalmon
#FFFF7F50FFFF7F5025525512780Coral
#FFFF4500FFFF450255255690OrangeRed
#FFFFA07AFFFFA07A255255160122LightSalmon
#FFA0522DFFA0522D2551608245Sienna
#FFFFF5EEFFFFF5EE255255245238SeaShell
#FFD2691EFFD2691E25521010530Chocolate
#FF8B4513FF8B45132551396919SaddleBrown
#FFF4A460FFF4A46025524416496SandyBrown
#FFFFDAB9FFFFDAB9255255218185PeachPuff
#FFCD853FFFCD853F25520513363Peru
#FFFAF0E6FFFAF0E6255250240230Linen
#FFFFE4C4FFFFE4C4255255228196Bisque
#FFFF8C00FFFF8C02552551400DarkOrange
#FFDEB887FFDEB887255222184135BurlyWood
#FFD2B48CFFD2B48C255210180140Tan
#FFFAEBD7FFFAEBD7255250235215AntiqueWhite
#FFFFDEADFFFFDEAD255255222173NavajoWhite
#FFFFEBCDFFFFEBCD255255235205BlanchedAlmond
#FFFFEFD5FFFFEFD5255255239213PapayaWhip
#FFFFE4B5FFFFE4B5255255228181Moccasin
#FFFFA500FFFFA502552551650Orange
#FFF5DEB3FFF5DEB3255245222179Wheat
#FFFDF5E6FFFDF5E6255253245230OldLace
#FFFFFAF0FFFFFAF0255255250240FloralWhite
#FFB8860BFFB8860B25518413411DarkGoldenrod
#FFDAA520FFDAA52025521816532Goldenrod
#FFFFF8DCFFFFF8DC255255248220Cornsilk
#FFFFD700FFFFD702552552150Gold
#FFF0E68CFFF0E68C255240230140Khaki
#FFFFFACDFFFFFACD255255250205LemonChiffon
#FFEEE8AAFFEEE8AA255238232170PaleGoldenrod
#FFBDB76BFFBDB76B255189183107DarkKhaki
#FFF5F5DCFFF5F5DC255245245220Beige
#FFFAFAD2FFFAFAD2255250250210LightGoldenrodYellow
#FF808000FF808002551281280Olive
#FFFFFF00FFFFFF02552552550Yellow
#FFFFFFE0FFFFFFE0255255255224LightYellow
#FFFFFFF0FFFFFFF0255255255240Ivory
#FF6B8E23FF6B8E2325510714235OliveDrab
#FF9ACD32FF9ACD3225515420550YellowGreen
#FF556B2FFF556B2F2558510747DarkOliveGreen
#FFADFF2FFFADFF2F25517325547GreenYellow
#FF7FFF00FF7FFF02551272550Chartreuse
#FF7CFC00FF7CFC02551242520LawnGreen
#FF8FBC8FFF8FBC8F255143188143DarkSeaGreen
#FF90EE90FF90EE90255144238144LightGreen
#FF228B22FF228B222553413934ForestGreen
#FF32CD32FF32CD322555020550LimeGreen
#FF98FB98FF98FB98255152251152PaleGreen
#FF006400FF064025501000DarkGreen
#FF008000FF080025501280Green
#FF00FF00FF0FF025502550Lime
#FFF0FFF0FFF0FFF0255240255240Honeydew
#FF2E8B57FF2E8B572554613987SeaGreen
#FF3CB371FF3CB37125560179113MediumSeaGreen
#FF00FF7FFF0FF7F2550255127SpringGreen
#FFF5FFFAFFF5FFFA255245255250MintCream
#FF00FA9AFF0FA9A2550250154MediumSpringGreen
#FF66CDAAFF66CDAA255102205170MediumAquamarine
#FF7FFFD4FF7FFFD4255127255212Aquamarine
#FF40E0D0FF40E0D025564224208Turquoise
#FF20B2AAFF20B2AA25532178170LightSeaGreen
#FF48D1CCFF48D1CC25572209204MediumTurquoise
#FF2F4F4FFF2F4F4F255477979DarkSlateGray
#FFAFEEEEFFAFEEEE255175238238PaleTurquoise
#FF008080FF080802550128128Teal
#FF008B8BFF08B8B2550139139DarkCyan
#FF00FFFFFF0FFFF2550255255Cyan
#FF00FFFFFFAFDFE4255175223228Aqua
#FFE0FFFFFFE0FFFF255224255255LightCyan
#FFF0FFFFFFF0FFFF255240255255Azure
#FF00CED1FF0CED12550206209DarkTurquoise
#FF5F9EA0FF5F9EA025595158160CadetBlue
#FFB0E0E6FFB0E0E6255176224230PowderBlue
#FFADD8E6FFADD8E6255173216230LightBlue
#FF00BFFFFF0BFFF2550191255DeepSkyBlue
#FF87CEEBFF87CEEB255135206235SkyBlue
#FF87CEFAFF87CEFA255135206250LightSkyBlue
#FF4682B4FF4682B425570130180SteelBlue
#FFF0F8FFFFF0F8FF255240248255AliceBlue
#FF1E90FFFF1E90FF25530144255DodgerBlue
#FF708090FF708090255112128144SlateGray
#FF778899FF778899255119136153LightSlateGray
#FFB0C4DEFFB0C4DE255176196222LightSteelBlue
#FF6495EDFF6495ED255100149237CornflowerBlue
#FF4169E1FF4169E125565105225RoyalBlue
#FF191970FF1919702552525112MidnightBlue
#FFE6E6FAFFE6E6FA255230230250Lavender
#FF000080FF008025500128Navy
#FF00008BFF008B25500139DarkBlue
#FF0000CDFF00CD25500205MediumBlue
#FF0000FFFF00FF25500255Blue
#FFF8F8FFFFF8F8FF255248248255GhostWhite
#FF6A5ACDFF6A5ACD25510690205SlateBlue
#FF483D8BFF483D8B2557261139DarkSlateBlue
#FF7B68EEFF7B68EE255123104238MediumSlateBlue
#FF9370DBFF9370DB255147112219MediumPurple
#FF8A2BE2FF8A2BE225513843226BlueViolet
#FF4B0082FF4B082255750130Indigo
#FF9932CCFF9932CC25515350204DarkOrchid
#FF9400D3FF940D32551480211DarkViolet
#FFBA55D3FFBA55D325518685211MediumOrchid
#FFD8BFD8FFD8BFD8255216191216Thistle
#FFDDA0DDFFDDA0DD255221160221Plum
#FFEE82EEFFEE82EE255238130238Violet
#FF800080FF800802551280128Purple
#FF8B008BFF8B08B2551390139Darkmagenta
#FFFF00FFFFFF0FF2552550255Fuchsia
#FFFF00FFFFFF0FF2552550255Magenta
#FFDA70D6FFDA70D6255218112214Orchid
#FFC71585FFC7158525519921133MediumVioletRed
#FFFF1493FFFF149325525520147DeepPink
#FFFF69B4FFFF69B4255255105180HotPink
#FFFFF0F5FFFFF0F5255255240245LavenderBlush
#FFDB7093FFDB7093255219112147PaleVioletRed
#FFDC143CFFDC143C2552202060Crimson
#FFFFC0CBFFFFC0CB255255192203Pink
#FFFFB6C1FFFFB6C1255255182193LightPink
[ 投稿者:mk3008 at 16:46 | VS.NET Tips | コメント(0) | トラックバック(0) ]

2008年08月30日
カスタムクラスをDataGridViewに表示する
一度にたくさんのデータを表示させたい場合に、DataGirdViewが使われますが、
DataGirdViewのサンプルは主にデータベースを用いたもの(DataSet、DataTableを用いたもの)が多く、
独自のクラス(カスタムクラス)の表示方法を解説するページはあまりないなぁ
なんて思っていたらMicrosoftのサイトにドンピシャな情報がありました(TT

カスタム データ バインド
http://www.microsoft.com/japan/msdn/columns/winforms/winforms11162004.aspx

カスタム データ バインド (第 2 部)
http://www.microsoft.com/japan/msdn/columns/winforms/winforms02182005.aspx

簡単にいうと、
クラス定義さえ作っておけば、
そのクラスをDataGridViewに表示するためのコードを自動生成
してくれるというのです。

恐ろしいほど簡単にできますので、詳細手順についてはぜひリンク先を見てください。

ちなみに、この記事は2005年の記事でVS2005がまだベータの頃の話だそうです・・・
こんな機能を今まで知らなかったなんて損してたなぁ・・・
[ 投稿者:mk3008 at 22:08 | VS.NET Tips | コメント(0) | トラックバック(1) ]

2008年03月28日
プロジェクトファイルをVBクラスファイルにする
かなりニッチな要求ですが、割と簡単にできましたのでメモ。

1.クラス化したいVBプロジェクトファイルを作業しやすいフォルダ(C:\など)にコピー。
 この際、拡張子を .xml に変更しておく。

2.C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin にある、xsd.exeを使って xsdファイルを作成する。 
コマンド例(Cドライブに WindowsApplication1.xml というファイルがある場合)
xsd c:\WindowsApplication1.xml
 
実行すると、
C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin にWindowsApplication1.xsd ファイルが作成されている。
3.「2」で作成したxsdファイルを作業しやすいフォルダ(C:\など)にコピー。

4.xsd.exeを使って、xsdファイルからクラスファイルを生成する。
コマンド例(Cドライブに WindowsApplication1.xsd というファイルがある場合)
xsd /c c:\WindowsApplication1.xsd

実行すると、
C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin に WindowsApplication1.cs ファイルが作成されている。
 クラスファイルは作成されるものの、言語はC#なので注意。

5.「4」のファイルをVB.NETに変換したい場合は、
 SharpDeveloper(http://www.sharpdevelop.net/OpenSource/SD/Download/)を使って、
   Tool > Convert code to > VB.NET
 とすればOK。

■参考
XMLスキーマ定義ツール(Xsd.exe)
http://msdn2.microsoft.com/ja-jp/library/x6c1kb0s.aspx

なんでこんなことをやるかって??

続きを読む ...
 
[ 投稿者:mk3008 at 01:41 | VS.NET Tips | コメント(0) | トラックバック(0) ]

2008年01月14日
VB2008のWPFアプリケーションって何だ?!
●WPFの正式名称
  Windows Presentation Foundation
  開発コードは「Avalon」

●実行環境には.Net Framework 3.0が必要
  VB2008では、デフォルトでは.NetFramework3.5となっています。
  これを.NetFramework3.0に変更してもコンパイルは通ります。
  .NetFramework2.0ではコンパイルできません。

●ファイルの構成
  画面定義ファイル       (class name).xaml
  同画面のイベント定義ファイル (class name).xaml.vb
  これはあくまで命名規則のようで、画面定義とイベント定義の紐付けは
  vbprojファイルで以下のような記述で行っている。
1    <Page Include="Window1.xaml">
2      <Generator>MSBuild:Compile</Generator>
3      <SubType>Designer</SubType>
4    </Page>
5    <Compile Include="Window1.xaml.vb">
6      <DependentUpon>Window1.xaml</DependentUpon>
7      <SubType>Code</SubType>
8    </Compile>
  
  ちなみに拡張子であるXAMLとは、
  Extensible Application Markup Language の略。

以下気になった特徴など

続きを読む ...
 
[ 投稿者:mk3008 at 17:40 | VS.NET Tips | コメント(0) | トラックバック(0) ]