トップページ⇒tech
1001コメント304KB

C♯相談室 Part4

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん♯NGNG

   ∧_∧____
  /(#゚ー゚) ./\
/| ̄∪∪ ̄|\/    C#,.NET関連の話題はこちらでどうぞ。
  |____|/
   ,,,,∪∪,,, ,,


過去スレ・関連リンクは>>2-5あたり
0002名無しさん♯NGNG
C♯相談室 Part3
http://pc.2ch.net/test/read.cgi/tech/1009473982/
C♯相談室 Part2
http://pc.2ch.net/test/read.cgi/tech/1002468050/ (現在dat落ち)
C#相談室
http://pc.2ch.net/tech/kako/977/977112364.html

ソース置き場.NET
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1003826049

Insider.NET
http://www.atmarkit.co.jp/fdotnet/
0003デフォルトの名無しさんNGNG
.NET Framework SDK ダウンロード
http://www.microsoft.com/japan/msdn/netframework/downloads/sdk.asp
0004デフォルトの名無しさんNGNG
ランタイムが20.4MB。凄いな。
0005デフォルトの名無しさんNGNG
関連スレ
VisualStudio.Net part2 /*3月22日発売決定*/
http://pc.2ch.net/test/read.cgi/tech/1014577995/
0006デフォルトの名無しさんNGNG
>>1 もういいのかな、スレ立て、お疲れ様です。
0007suNGNG
日本語版とSP1を早速インストールした。
日本語版をインストールしてもちゃんとビルドできてたのに
SP1をインストールしたらリソースを変換できませんって怒られるよ〜。
0008デフォルトの名無しさんNGNG
日本語版SDk入れたけど、VS.NET英語版、メニューやらなんやらは
国際化の設定で日本語になったけどヘルプは英語のままね。
やっぱりMSDNから日本語版VS.NETダウソせな駄目かな、、
0009デフォルトの名無しさんNGNG
クイックスタートがつかえん。
コンパイルエラーがでる。
なんとかならんかのう。
0010まとれすNGNG
>>7
英語版SP1を英語版環境に入れたが、特に問題無いぞ

>>8
そら、さすがにだめだろ
ドキュメントの日本語化に、かなーり力入れたみたいだな。MSKKは

>>9
どっかに対策なかったか? Web.configかなんかを書きかえるってやつ
0011まとれすNGNG
おっといい忘れ。#さん、スレ立ておつかれさま。こっちのスレでもよろしく!
0012デフォルトの名無しさんNGNG
>>10
>>9です
ちがうんだよ
DLLがないっておこられるんだよ
0013まとれすNGNG
>>12
何のDLL? 環境をもちっと詳しく書いてみ
0014デフォルトの名無しさんNGNG
>>13
http://localhost/quickstart/ASPPlus/
を開こうとすると、

『コンパイル エラー
コンパイラ エラー メッセージ: CS0013: メタデータ をファイル 'C:\WINNT\Microsoft.NET\Framework
\v1.0.3705\Temporary ASP.NET Files\quickstart_aspplus\e939111e\ddd4e8c5\jxnkq0g_.dll' に書き込み中に
予期しないエラーが発生しました』

と出てくる。
ちなみにそんなファイルは存在していない。
OSはWinXP Pro

beta2版をアンインストールしてからインストールしたんだけど、
英語サイトをみるとこの辺に原因があるようなんだな。
英語苦手なんで四苦八苦してるよ。
0015デフォルトの名無しさんNGNG
SDK配布開始に続いてhttp://sourceforge.jpも間もなく開始。
連日お祭り気分♪
0016デフォルトの名無しさんNGNG
連休中は話題に事欠かないな
http://www.microsoft.com/japan/msdn/vstudio/device/mitdownload.asp
http://www.microsoft.com/japan/msdn/net/aspnetsolution/
0017デフォルトの名無しさんNGNG
奇になる人はこれをだうぞ
http://www.microsoft.com/JAPAN/support/kb/articles/JP317/3/96.asp
0018デフォルトの名無しさんNGNG
AllowDropのプロパティをTrueに入れたら
DragDropの登録に失敗しましたって、例外でるよ。
なんじゃこれ。逝ってよし。SDKJP.SP1のせいか?
0019デフォルトの名無しさんNGNG
.Net SDKでDirectX使えるの?
0020デフォルトの名無しさんNGNG
>>19
managedっていう意味なら、まだ。もちろんCOM Interop経由では使えるよ。
0021名無しさん♯NGNG
新しいニュースグループができてた。

news://msnews.microsoft.com/microsoft.public.jp.dotnet.vsnet
0022デフォルトの名無しさんNGNG
正式版リリースされたのに盛り上がってないね。。。
0023デフォルトの名無しさんNGNG
ここはそういう浮ついたスレじゃないからさ。
0024デフォルトの名無しさんNGNG
>>18 困りました。。OS入れ替え、VS.NET入れ替えて試してみたのですが
Form1のAllowDropをtrueにし
Form1 form = new Form1();
form.Show();
とすると、Show();のところで、、
An unhandled exception of type 'System.InvalidOperationException' occurred in system.windows.forms.dll

Additional information: DragDrop registration failed.
と例外がでてしまいます。
新規ウィンドウアプリケーションプロジェクトをつくり、やってみると、
例外はでません。プロジェクトが違うだけで、フォーム内のコードは
ネームスペースが違うだけなのですが。なぜなのでしょう?
0025FERC.NETNGNG
>>24
FERC.NETエージェント1号が調べた結果、以下のことがわかった。

DragAndDrop機能はCOM(OLE)の機能を利用しているので、スレッディングモデルが重要になる。
特にGUIアプリケーションは、STAで動作しなければならない。

.NET Frameworkのスレッディングモデルは、COMから見るとMTAに見えるので、
GUIでしかもCOMの機能を使う場合は、STAスレッドで動作することを明記しなければならない。

そのため、MainメソッドにSTATheradAttributeをつけなければならないのだ。
VS.NETで新規に作成したWindowsフォームアプリケーションをよく見ると、
次の記述があるだろう。

[STAThread]
static void Main() {
 Application.Run(new Form1());
}

この、[STAThread]がついていない場合は、Drag&Dropオペレーションが失敗する。
単純にMainメソッドの上にこの属性をつければ、動作するようになるだろう。

ちなみにこれはBeta2のときから変わらない機能制限なのだが、Beta2のバグで、
この属性がついていないフォームでも(一見)正しく動作してしまっていたのだ!

以上です、チーフ。
0026デフォルトの名無しさんNGNG

FERC.NETエージェント1号さんって何者ですか?

おそろしく詳しそうなんですけど..

間接的に助かっています。ありがとう。
0027デフォルトの名無しさんNGNG
>>25 ありがとうございます。見事です。うまくいきました。
そのSTAスレッドというのを勉強させていただきます。
本当にありがとう。
0028デフォルトの名無しさんNGNG
STAはシングルスレッドアパートメントの事だよ。アパートメントについてはCOMの入門書かMSDNを読むとよろしい。
0029デフォルトの名無しさんNGNG
C# Standardには
ウィザードとツール類のクラス ライブラリプロジェクトの作成が
ないんだけどこれってどんな機能ですか?
VCのDLL、LIB相当のライブラリ作成機能がないって事?

あとドキュメントは一回きりのMSDNが入ってるんですか?
0030デフォルトの名無しさんNGNG
System.Windows.Forms.TreeView
って追加するとき
treeView1.Nodes.Add(String node)
しかないってのはひどすぎだと思うんだが・・・

インスタンス作成するときに配列とかxmlとかできます?
んー、それとも継承して使うもん?
0031FERC.NETNGNG
>>30
FERC.NETエージェント1号が思うに、

>treeView1.Nodes.Add(String node)しかないってのはひどすぎだと思うんだが・・・

TreeNodesCollection.Addにはもう1つTreeNodeをとるオーバーロードがあるし、
AddRangeやInsertもあるので、それしかないってことはないと思われます。

以上です、チーフ。
003230NGNG
Javaならコンストラクタだけで
JTree()
JTree(Hashtable value)
JTree(Object[] value)
JTree(TreeModel newModel)
JTree(TreeNode root)
JTree(TreeNode root, boolean asksAllowsChildren)
JTree(Vector value)
これだけあるぞ

Java サゲ
003330NGNG
>>30
たしかに1つしかないってのは言いすぎでした。

AddRange・Insert
ともに現時点ではちと用途が違う感じでしたんで
TreeViewConverter ってのを現在調べ中なり
ありがと
0034デフォルトの名無しさんNGNG
現在時刻を取得したり、時間間隔を計算するにはどうしたらいいんでしょう?

時間関係の型とかクラスが見あたらないんですが…。
(たぶん、探し方が下手なだけだと思う)
0035デフォルトの名無しさんNGNG
>>34
System.DateTimeクラスか何かあったような。。。
DateTimeで検索してみて。
003634NGNG
>>35

System.DateTime ありますね。ヽ(´ー`)ノ
まず真っ先にDateTImeで調べたつもりだったんですが…。

ありがとうございました。
0037デフォルトの名無しさんNGNG
SDKでやるのにちょっと便利なので、初心者の方にご紹介。
SDKのヘルプも呼び出せていい感じです。
キーワード別に色もつけられます。

CPad For C#
http://hp.vector.co.jp/authors/VA017148/
0038デフォルトの名無しさんNGNG
>>37
シェアウェアじゃん。
それならSharpDevelop使おうよ。
0039デフォルトの名無しさんNGNG
Visual Studio 6.0に組み込んでる私はアフォですか?
004037NGNG
>38
シェアウェアなんですけど機能制限無いですし、支払いも義務ではないですよ。
初心者(私も含む)にはわかりやすいです。
ところでSharpDevelopはどこで見れますか?
検索してみたんですが、いろいろリンクが死んでるようで・・・・
0041デフォルトの名無しさんNGNG
Sourceforge にあるよ。
0042デフォルトの名無しさんNGNG
>>40
http://www.icsharpcode.net/OpenSource/SD/default.asp
004337NGNG
>42
おぉぉ〜これはすごい。まるでVSですね。
英語版しかないのが初心者にはネックですが、辞書片手に使ってみたいです。
ありがとうです。
0044デフォルトの名無しさんNGNG
>>43
日本語に対応してるよ。
0045デフォルトの名無しさんNGNG
>>44
いいっすね。
日本語にもなるし、CVSにも対応してるし、言う事無しかも。
これを見た後じゃ、悪いけどCPadとか言うのは使えないなぁ。
004645NGNG
これタブブラウザにもなるやん(w
SharpDevelopから書き込み。
0047デフォルトの名無しさんNGNG
C#のwindowsフォームコントロールにはMFCでいうところの
CHtmlViewみたいなものは無いのでしょうか?
0048デフォルトの名無しさんNGNG
>>47
ないのでCOMのWeb Browserコントロールを使うしかない。
0049デフォルトの名無しさんNGNG
まじぇ?2chブラウザ作ろうと思ってたのに。
0050デフォルトの名無しさんNGNG
>>49
そんなに大きな問題じゃないでしょ。
配布サイズが大きくなるけど。
0051デフォルトの名無しさんNGNG
SharpDevelopにはSunの社員も参加しているという罠
0052デフォルトの名無しさんNGNG
>>47-50
具体的にCOMのWeb Browserコントロールを使うには
どうすればいいのでしょうか?
0053名無しさん♯NGNG
>>52
メニューの [ツール]→[ツールボックスのカスタマイズ] で
Web Browserコントロールをチェックしてちょ。

そうすると、左のツールボックスの [全般] タブにアイコンが出てくるから、
あとは普通のコントロールと同じ感覚でドラッグ&ドロップ。

プロパティとかイベントもちゃんと出てくるよん。
0054デフォルトの名無しさんNGNG
>>53
[COMコンポーネント]の[Microsoft Web Browser]というところを
チェックしてみたのですが、ツールボックスの[全般]には何も表示
されないです。

なにか、間違えているでしょうか?
0055デフォルトの名無しさんNGNG
>>54
どっか他のタブに追加されているってことない? ツールボックスを右クリックすれば、
同じメニューがでるから、それでもおっけーだよ。
0056名無しさん♯NGNG
>>54
あらま。ごめんちゃい。
ツールボックスのアクティブなタブに追加されるみたいね。
どこかのタブの末尾に Explorer ってのがないか探してみてちょ。
0057デフォルトの名無しさんNGNG
>>55-56
何度か試してたら出てきました。
お騒がせしました。
0058デフォルトの名無しさんNGNG
Web Browserコントロールをフォームに貼り付けたところ、
コードに次のようなものが追加されました。

private AxSHDocVw.AxWebBrowser axWebBrowser1;

で、AxWebBrowserっていうものがどんなメソッドをもって
いるか調べようとヘルプで検索してみたのですが、全然出て
きません。なぜ、でしょうか?
0059デフォルトの名無しさんNGNG
>>58
COMコンポーネントだから。
0060デフォルトの名無しさんNGNG
>>58
オブジェクトブラウザで見るよろし。
Ctrl+Alt+J
0061デフォルトの名無しさんNGNG
>>59-60
なるほど。
またもや助かりました。いろいろいじってみます。
0062デフォルトの名無しさんNGNG
C#か.NET Frameworkって、
VBみたいに順序が保たれて、なおかつ定数時間でKeyからItem取り出せる
コレクションは無いんですか?
0063デフォルトの名無しさんNGNG
>>62
ん?System.Collections.Hashtableのことかな?
0064デフォルトの名無しさんNGNG
SharpDevelopインストールしてみたけど、背景が白色だけみたいね。
目が疲れるからエディタの背景色は黒がいいのにな・・・・
独り言につきsage
0065デフォルトの名無しさんNGNG
MfcにおけるCEditViewを使用した感じのアプリは
どうやって作るのでしょうか?
.NET SDKをひっくりかえしてみているもののやり方がわからない・・・
このままではメモ帳もつくれなひ・・・
0066デフォルトの名無しさんNGNG
>>65 MFCはよくしらないけど、
System.Windows.Forms.RichTextBox
System.Windows.Forms.TextBox
あたりかな?
0067デフォルトの名無しさんNGNG
TextBoxのMultilineをTrueにするのでは?
0068デフォルトの名無しさんNGNG
外部のフォルダを選択してドラッグアンドドロップで自作アプリケーションの
上に放り込むんでそれを処理するプログラムを作りたいのですが
ドラッグアンドドロップがどのように実現できるでしょうか?
0069デフォルトの名無しさんNGNG
>>68
プロパティのAllowDropをTrueにして、
イベントのDragDropにコードを追加する。
0070デフォルトの名無しさんNGNG
>>68
ドラッグアンドドロップでキーワード検索してみてみました?
あと前スレに既出です。819-821を見て参考にしてください。
0071デフォルトの名無しさんNGNG
C#始めたんでこのスレ&前スレ覗いたんだけどレベル高い・・・・
誰かモナーのやさしいC#質問スレとか立ててくれないかな〜・・・
スレ汚しスマソ
0072デフォルトの名無しさんNGNG
>>71
何でも聞けばよし
0073デフォルトの名無しさんNGNG
ワ-ラ-タ。
http://messages.yahoo.co.jp/bbs?.mm=GN&action=m&board=2000083&tid=cbcalda5ha5t&sid=2000083&mid=1&type=date&first=1
0074デフォルトの名無しさんNGNG
>>68
まさにこれ、
ttp://www.atmarkit.co.jp/fdotnet/csharptips/003dragdrop/003dragdrop.html

ところで、僕はJava上がりなんですが
Javaに比べてC#ってメソッドの連結が多くて
「.」の書く回数多くないですか?
たとえば、e.Data.GetDataPresent(DataFormats.FileDrop)みたいな・・・
まさに、ドットNET
007562NGNG
>>63

System.Collections.Hashtable は検索が定数時間だけど、
追加した順番での取り出しが出来ない。
自作するしかないかな…。
0076デフォルトの名無しさんNGNG
ZIPやLZHなんかの圧縮ファイルはどうやったら作れるでしょうか?
0077デフォルトの名無しさんNGNG
>>76
それはアル語の問題
0078デフォルトの名無しさんNGNG
XPには標準でZIPのCODECついてるんじゃない。
0079デフォルトの名無しさんNGNG
>>76
ttp://www.icsharpcode.net/OpenSource/NZipLib/default.asp
0080デフォルトの名無しさんNGNG
>>75 Hashtable.GetEnumeratorみろ。
0081デフォルトの名無しさんNGNG
System.Diagnostics.Process.Start
で起動したアプリ(Ex電卓など)のZオーダーやら
ウインドウ位置等を変更したいんですけどどうしたらいいでしょうか?
0082デフォルトの名無しさんNGNG
そのプログラムの動作しているディレクトリを取得するには
どうしたらいいんでしょう
0083名無しさん♯NGNG
>>82
AppDomain.CurrentDomain.BaseDirectory でどうかしら。
0084FERC.NETNGNG
>>82-83
Path.GetDirectoryName(Assembly.GetCallingAssembly().Location)
というてもありますね!
0085デフォルトの名無しさんNGNG
>>82 DirectoryInfo directory = new DirectoryInfo(".\\");
ってやってたよ。漏れ。
>>83 はしらなんだ。AppDomainは面白そうね。
0086名無しさん♯NGNG
>>81
ProcessクラスのMainWindowHandleプロパティで
ウィンドウハンドルを取り出せるから、あとはAPIゴリゴリかしら。

NativeWindowクラスにアサインしてもあまり役に立たないし...。
0087名無しさん♯NGNG
>>84
Assemblyクラスから取った方が自然な感じね。ありがと。
008881NGNG
>>86サンクス。
NativeWindowクラスにアサインして悩んでたですよ。
とりあえずできました。おれも答えれる側に回れるよう
がんばりやす。
0089デフォルトの名無しさんNGNG
>79
ありがとうございます。
そこのNZipLib.Dllライブラリを使ったらとりあえずディレクトリの圧縮はできるようになりました。
しかしディレクトリがまたサブディレクトリを含んでいる場合うまくいきません。

ZipOutputStream s = new ZipOutputStream("test.zip"));
foreach (file in **){
ZipEntry entry = new ZipEntry(file);
s.PutNextEntry(entry);
}

こんな感じでやっているのですが、fileがディレクトリの場合また別の処理
(再帰呼び出し?)をしてという風にやったらいいのでしょうか?
0090デフォルトの名無しさんNGNG
>>86
#さんらしくない。

Processesコレクションから実行ファイル名をキーにProcessクラスを取得して判断
できますよ。
0091 ◆AlPo3XmI NGNG
#さんはいい人キャラだから言いにくいと思うので、私が言いましょう。

>>90
ハァ?なにを取得してなにが判断できるんですか?ソースコードキボンヌ。
009290じゃないよNGNG
>>91 まぁまぁ・・・
>ウインドウ位置等を変更したいんですけど
ってのを90が読み落としたんでないの?とわしは思ったけど、、
#さんはこの部分はAPIでってことでしょう。
0093煽りじゃないよNGNG
>>90
Processesコレクションてどのクラスにあるの?
0094煽りじゃないよNGNG
あー、分かった。Process.GetProcessesByName()で探せってことか。
そこまでしなくても、Process.Start()の戻り値を直接使えばいいじゃん。
009590NGNG
>>91、92
スマソ、別スレの二重起動チェック関係と間違えてました。

#さん、91さん、ごめんなさい。
0096デフォルトの名無しさんNGNG
LinkLabelってのをFormに貼り付けて遊んでみようとしたところ
うまくいきません。
e.LinkDataがNULLなんですが、何故ですか?

これって何か前準備が必要なんでしょうか?
0097デフォルトの名無しさんNGNG
>>96
LinkLabel.Links.Addで登録した?
0098デフォルトの名無しさんNGNG
>>97
無事解決しました…が。

LinksAreaって何?
これを設定しないと期待したとうりに動くのですが
使い方が謎です
0099デフォルトの名無しさんNGNG
>>98
リンクの下線を出す領域だと思われ。
Links.Addの第1・第2引数でも同じことをやってる。
0100デフォルトの名無しさんNGNG
>>99
ハマってたのはこれを使うケース。何も考えずにペタペタと
貼り付けたいから。
この場合、Links.Addはしなくてもよさそうな感じなんですが…

クラスライブラリのソースが欲し
0101デフォルトの名無しさんNGNG
C#で作ったプログラムを配布したいんですけど
.Netのインストールされていない環境にはどうしたらいんでしょうか?
インストールしてもらう必要があるのかでしょうか?
■ このスレッドは過去ログ倉庫に格納されています