ラベル VC# の投稿を表示しています。 すべての投稿を表示
ラベル VC# の投稿を表示しています。 すべての投稿を表示

2018年1月8日月曜日

Visual Studio 2017 でVBScriptのデバッグできた。

VBScriptをデバッグしたい!と思うことがあり、調べてみると、VisualStudioでできるという感じのページがいくつか見つかるのだが、いかんせん記事が古い。
その間、VSのバージョンも着々とあがっているので、最新の2017ではどうなのかな、、、?

ということでやってみた。
結果、VS2017でVBScriptのデバッグできました!
(Windows10+Visual Studio 2017)

やり方は、以下のサイトはVS2012だけど、基本的に同じ手順でできました。
手順ごとに画像があって、わかりやすいページです!

■VBScript でもデバッグしながら開発を行える | ええかげんブログ(本店)
http://algorhythnn.jp/blg/2013/11/06/vbs-debug-use-visual_studio2010/


一応違いといえば、、、プロジェクトの作成のところで。
 [Visual C++]>[全般]>[メイクファイルプロジェクト]
Visual Studio 2017 プロジェクトの作成
Visual Studio 2017 プロジェクトの作成


VS2017でデバッグできる という記事が見当たらないので書いただけであって、私 今回始めてVSインストールしたぐらいな素人です。
無いと思いますが、、、使い方とか質問頂いても全く答えられません! ( ・`ω・´)キリッ


2009年10月20日火曜日

VC# 参考 パネル上の画像を移動させる

VC# 参考

Panelに、PictureBox を載せる。 ← スクロールバーを出すため

// panel上の画像を移動させる。
panel1.VerticalScroll.Value = intNewVertical;
panel1.HorizontalScroll.Value = intNewHorizonal;

// TODO なぜか、1回入れただけでは反映されないので、再度入れ込む。
panel1.VerticalScroll.Value = intNewVertical;
panel1.HorizontalScroll.Value = intNewHorizonal;

2009年10月19日月曜日

VC# 参考 マウスポインタを変更する

VC# 参考

■02.マウスポインタを変更する < マウス Tips メニュー < C# 2005 Tips HOME < HIRO's.NET
 http://hiros-dot.net/CS2005/Mouse/Mouse02.htm

// マウスポインタ変更
System.Windows.Forms.Cursor.Current = Cursors.NoMove2D; // 水平&垂直スクロール

2009年6月19日金曜日

VC#参考:ツールチップを使う

VC# ツールチップを使う。

ってきり、個々のコントロールに普通にプロパティ(?) があるのかと思ってたら、別途 tooltip コントロールを用意するとのこと。

そういえば、デザイナ画面コントロールの一覧に「ToolTip」って、部品あったな。 気にしてなかった。。。orz

■Windowsフォームでツールチップを表示するには? − @IT
http://www.atmarkit.co.jp/fdotnet/dotnettips/368tooltip/tooltip.html

2009年6月16日火曜日

C#3.0 -- 任意のウィンドウをアクティブにしてキーコードを送る

他のアプリに直接文字を送って。操作したいことがありました。

参考HP:

■橋本商会 C#3.0 -- 任意のウィンドウをアクティブにしてキーコードを送る

--------------------------------------------------------
自分メモ
--------------------------------------------------------
とか、クラスの中で書かないと、コンパイルエラーになる?
外だし、or クラスの中の関数内で宣言するとダメだった。。。
class aaa
{
using System.Runtime.InteropServices; // for DllImport
[DllImport("user32.dll")]
extern static IntPtr GetWindow(IntPtr hWnd, uint uCmd);
[DllImport("user32.dll")]
extern static IntPtr GetForegroundWindow();
[DllImport("user32.dll")]
extern static int GetWindowText(IntPtr hWnd, StringBuilder lpStr, int nMaxCount);
[DllImport("user32.dll")]
extern static bool IsWindowVisible(IntPtr hWnd);
[DllImport("user32.dll")]
extern static bool SetForegroundWindow(IntPtr hWnd);

private func()
{
// ウィンドウ判断して、文字送りこむ。
}
}

2009年5月15日金曜日

VC#参考:ネットワーク接続をコントロールする方法

ネットワーク上の他のPCで、認証必要な共有フォルダにアクセスしたいんだけど、どうやってやるの? と調べたけど、なかなか見つからない。 普通こういう使い方しないのかな。 まぁ、確かにID、パスワードをどう扱うかは、悩み処ではあるが。


↓とりあえずやっと見つけたのでメモ。

■C#でネットワーク接続をコントロールする方法:老プログラマーの備忘録:So-net blog
 http://a-programmer.blog.so-net.ne.jp/2007-08-07

 "…C#ではWNetAddConnectionを使います。"

参考:VB.NETとC#でデザインパターン

参考: VC#

■VB.NETとC#でデザインパターン
 http://hccweb1.bai.ne.jp/tsune-1/index.html

オブジェクト指向とか、クラスとかそもそも分かってないので、、、 参考になりそうです。 ←って、それも何か違う!? まぁ、勉強中なんで、大目に。

2008年12月30日火曜日

VC# CheckBox コントロールにイベントを追加する

VC#
CheckBox コントロールに独自のイベントを追加する。

// 値変更時のイベントを登録する
chk.CheckedChanged += new System.EventHandler(myCheckedChanged);


// キー押下時のイベントを登録する

// ↓CheckedChangedと同じようにイベント追加したら、コンパイルエラー
// デリゲート 'System.EventHandler' に一致する'fncPreviewKeyDown' のオーバー
ロードはありません。
//chk.PreviewKeyDown += new System.EventHandler(myPreviewKeyDown);

// ↓こうすればOK  なんでかは、分かっていません。。。
chk.PreviewKeyDown += new PreviewKeyDownEventHandler(myPreviewKeyDown);

}



// チェックボックスのCheckedChanged 値変更時のイベント
private void myCheckedChanged(object sender, EventArgs e)
{
〜処理〜
}

// チェックボックスのPreviewKeyDown キー押下時のイベント
private void myPreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
{
〜処理〜
}

2008年12月29日月曜日

VC# mailtoでメール作成 その2

VC# mailto でメール作成する時に、
Urlエンコードされちゃ、マズイのをゴリゴリ回避

URLエンコードの特性上(?)、ダブルコーテーション["] → %22、半角スペース[ ] → + にと変換されてしまうらしいので、ダミー文字列に置き換えて、UrlEncodeした後、再度ダミーを元に戻す。
→ ["]は、そのままで大丈夫だったので、とりあえずスペースだけ。

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
private string MailEncode(string iData, string iEncNm)
{
  // ダミー置換定義 [i,0]=ORG [i,1]=ダミー
  // 定義1個しかないけど、、、とりあえず配列にしておく。 後で追加するかも!?
  // ダミー文字列は、URLエンコードされない文字で、かつ元データで使わないだろう・・・と思われるものを適切に(適当に?)
  const int ORG = 0;
  const int DMY = 1;
  string[,] RepDefs = new string[,] { {" ", "(((SpaceDeSuYo)))"}};

  string RtnVal = iData;
  System.Text.Encoding enc = System.Text.Encoding.GetEncoding(iEncNm);

  int MaxRow = RepDefs.GetLength(0); // 定義行数
  for (int i = 0; i < intMaxRow; i++)
     {
     // URLエンコードしたくない文字を一旦ダミーの文字に置換
     RtnVal = RtnVal.Replace(RepDefs[i, ORG], RepDefs[i, DMY]); 
    // URLエンコード
     RtnVal = System.Web.HttpUtility.UrlEncode(RtnVal, enc);
     // ダミーの文字にしたものを、戻す
     RtnVal = RtnVal.Replace(strRepDefs[i, DMY], RepDefs[i, ORG]);
   }
   return RtnVal; 
}


参考:自blog
・VC# mailtoでメール作成  http://oojima33.blogspot.com/2008/12/vcmailto.html

 ってか、本当は、1記事で書いていたんだけど、途中から文章が壊れる。。。ので、2分割しただけ。 文字数多すぎた? そのうち調べてみようかな。

VC# mailtoでメール作成

VC# mailto でメールを作成する。

mailtoのリンク(?) を使用して、普段のメールソフトから送信できるようにメールを作る。 送信そのものはしない。

アプリからメール送信をしてもいいのですが (って、VC#で作ったことないくせに)、アプリそのものからは送らない。というのも、アプリで設定するのは、基本的に宛先だけ。 内容は後で、自分で (既定のメールソフト上で) 作成するからいい。

普段のメールの方が、作業しやすいし、送信済みアイテムも残せるし、何より自分のお手製アプリでメール送信なんて、怖くてできない! 当然、バグる可能性高いし、どんな状態で送られているのか不安で、不安で・・・。

"宛先ぐらい、普通に自分で入力しれよ!" と言うだろうが、宛先が多いし、結構変わるもんで、別途管理しているデータがあるわけ。 それを使って送り先を抽出して、設定したメールの雛形? を作るわけだ。

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

OutlookExpress → sjis, ThunderBird → uft8 で作成しないと文字化けする。 他は使ってないので、分りません!

【保留】プログラム側で デフォルトのメールクライアントを判定したいが方法が分らず。。。 とりあえず、エンコードを指定してから、mailtoを実行させる。(アプリ側で指定されたエンコード見て、処理する。)

【保留】添付ファイル。 何やら、メーラーによっては使えそうらしいが、保留。 後で勉強兼ねて実装したいとは思う。

・参考HP:
 [DOBON.NET] 指定したURLをブラウザで開く、電子メールソフトを開く
 http://dobon.net/vb/dotnet/process/openbrowser.html

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

// ↓適当。 とりあえず、エンコードの種類を決める。
string EncName;
switch ( 既定のメールクライアントは? ) {
  Case "OutlookExpress":
    EncName = "shift_jis"; // ← OE用に
    break;
  Case "ThnderBird":
    EncName = "utf-8"; // ← 雷鳥用に
    break;
  後、省略。   
}

// ↓mailto用のデータを作成
// TO
string ToAddress = "Aさん";
// ←日本語表示名付き
ToAddress += ", bbb@XXX.XX"; // ←複数宛は順次追加

// Urlエンコードされちゃ、マズイのをゴリゴリ回避
ToAddress = MailEncode(ToAddress, EncName);

// CC, BCC, 件名 Subject, 本文 Bodyも同様に各内容を作成


// メールデータまとめる
string MailData = string.Format("mailto:?to={0}&subject={1}&body={2}&cc={3}&bcc={4}",
ToAddress, Subject, BodyMsg, CcAddress, BccAddress);


// mailtoで、既定のメールクライアントを起動
System.Diagnostics.Process.Start(MailData);

// ここまで本体


-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
「Urlエンコードされちゃ、マズイのをゴリゴリ回避」の続き↓
http://oojima33.blogspot.com/2008/12/vcmailto2.html

2008年12月27日土曜日

VC# コントロールにアクセスする

VC# メモ:

フォームに配置したコントロールにアクセスするのに、indexだけでなく、そのまま名前を添え字にしてもいいみたい。 当たり前? すみません、無知で。。。

例:チェックボックス "chk_01" の値 (チェックされてる?) を参照する。

以下、どちらでも大丈夫。
・(CheckBox)this.flowLayoutPanel1.Controls["chk_01"]).Checked

・(CheckBox)this.flowLayoutPanel1.Controls[0]).Checked

2008年12月24日水曜日

VC#でSQLiteを使う

VC#から、SQLite (System.Data.SQLite) を使用する方法

参考HP:
[SQLiteを.NETで弄る]
http://floralcompany.jp/archives/2008/03/sqlitenet.html

メモ:
・System.Data.SQLite の参照設定
・using System.Data.SQLite; の記述


いつの間に、VC#始めたかって? つい、2,3日前です。 C#そのものも、全くのシロウトです。。。

2008年12月20日土曜日

VC# 始めました。

いまさら? Visual Studio 2008 Express Edtion を入れてみた。 というか、こんなの無償で使えるの知らんかった。。。 どうせ、ちょっとお試しぐらいしか使えないのかと思ってたら、 30日以降は無償のユーザー登録すれば引き続き使えるらしいのを知ったので、とりあえずインストールしてみました。


そもそも C#の基本が分かっていません。 とりあえず、ここらへんでしょうか

参考HP