.NETよりはまし。.NETの検索し難さといったら…
953 :
デフォルトの名無しさん :2009/03/30(月) 14:24:12
でもCとかDよりいいよね
Bも忘れないであげて
VisualC#2008をインストールして、動作確認の為にWindowsFormsApplication1を 作成したのですが、デバッグ実行すると(0xc0000005)で終了してしまいます。 デバッグなしで実行だと、普通にウインドウが表示されます。 どうやら、プロジェクト名の長さが11文字以上だとこういう現象になるようです。 プロジェクト名が10文字以内というのは、ちょっと不便なのでなんとかしたいの ですが、対策をご存知の方がいましたら教えてください。
今の今まで C,C++,C#相談室 だと思ってた
昔はスレタイに # の文字入れると#が消えちゃってたから しつこく入れるようになったんだっけかw
検索用じゃね? …と思ったら、1つ目と3つ目がどちらも ASCII のナンバ記号だった。
いつもは3つ目が全角のナンバー記号だよ。 次スレ立てる人は気をつけて。
この Part51 でそろそろ終わりにしようぜ
2ヶ月で1スレ消費するようなペースって事は需要はあるのだろう。 Part51にもなって「そろそろ終わりに・・」ってのは今更すぎないかw
スレタイに#を3パターンで書くのをこのスレで終わりしないかといってると上の流れを見ると思うのだが 俺がイカれてるのかな。そう解釈する俺が狂ってるだよなやっぱりそうとしか思えないうん
他のC#スレも数パターン使ってるとこあるし、検索用に残しといていいんじゃね?
ところでおまいらC#で組んだもの、何に利用してるの? 仕事?
研究 まあ仕事だけど
俺は趣味でちまちま作ってる。 自分専用の痒い所に手が届くような小規模アプリが殆ど
C#で孫の手つくれんの?
つまんないよ
つまらないものを面白くするのがプログラミングだろjk
窓の手ってそういう意味だったのか!素で気付かなかった
C井でいいんじゃね?
思いっきり仕事だな。 来月あたりに客先とおしてそのユーザーに公開される(´・ω・`)
趣味コードは全部C#。 仕事だと、社内ツールの類はC#で書いてる。
975 :
デフォルトの名無しさん :2009/03/31(火) 10:08:11
質問です。 PropertyGridで入れ子になっていて展開可能な項目を自動で展開したいです。 まずExpandAllGridItemsメソッドを調べてみましたが、これはカテゴリの展開専用で意味がありませんでした。 次に、GridItem.Expandedプロパティを見つけ、おおこれこそ捜し求めていたものと歓喜したのですが・・・ PropertyGridからGridItemの一覧を得る方法が分かりません。 SelectedGridItemがあって、なぜGridItemsが無いのでしょうか。
SelectedGridItemからParentたどってけば
Public Type Struct1 Member1 As String Member2 As Byte Member3 As Byte Member4(20) As String Member5(20, 1340) As Byte End Type Declare Function ExpFunc1 Lib "Library1.dll" _ (ByRef a_Struct1 As Struct1, _ ByVal a_iNumber1 As Long, _ ByVal a_iNumber2 As Long) As Long ソースのない「Library1.dll」とそれを利用するための 上のようなVB6のサンプルがあるんですが、 これをC#(2008/.NET3.5)で利用するにはどう書いたら いいんでしょうか? よろしくお願いします。
>>977 C#で参照してみれば?
ラッパクラ出来てインテリセンスきくんじゃないかな?
>>979 ---------------------------
Microsoft Visual C# 2008 Express Edition
---------------------------
'Library1.dll' への参照を追加できませんでした。
ファイルがアクセス可能で、有効なアセンブリまたは
COM コンポーネントであることを確認してください。
---------------------------
OK
---------------------------
COMじゃないとNGっぽいですね。
DllImportでぐぐればいいんじゃね
>>980 ごめん、VB6のDLLかと思ってた
VB6はDLLはCOMになるから
そういうことならReflection使ってみては?
色々他にもあると思うけど
動的に呼び出しさせて何をさせようというんだ俺は・・・ 疲れてんだな
>>977 2次元配列のマーシャリングってできたっけ?>識者
2次元配列はやったことないけど出来るはずだと思う
うお、今調べたら出来ないようだった、もうしわけない。 対策はいろいろあるそうだが、ストレートには出来ないそうだ。
とりあえずVB6の知識をひけらかすか Public Type Struct1 Member1 As String 'BSTR Member2 As Byte '1バイト Member3 As Byte '1バイト Member4(20) As String 'UTF16な文字が20文字 Member5(20, 1340) As Byte 'Option Base 0なら21×1341バイト End Type 何の役にたつかはしらん
>>987 >UTF16な文字が20文字 はこれじゃね?
Member4 As String * 20
Member4(20) As String はStringの配列21 (Option base によるけど)
>>987 ,988
参考になります。
Option Base は無指定ですので、0ですかね。
UnmanagedType.BStr をヒントにもう少しトライしてみたいと思います。
VB、C#混合になってしまうが
VB6で
>>877 の標準モジュールを含むプロジェクトを作って
VB.NETのアップグレードウイザードにかける。
やってみたがTODOが残るな・・・これもで手を入れないといけないようだ。
VB6もC#も中途半端な知識しか持っていないけどこんな感じではないのか、と質問していい? unsafe struct Struct1 { [MarshalAs(UnmanagedType.LPStr)] string Member1; byte Member2; byte Member3; [MarshalAs(SizeConst = 21)] string Member4[]; fixed byte Member5[21 * 1340]; }; [DllImport("Library1.dll")] static extern int ExpFunc1(ref Struct1 a_Struct1, int a_iNumber1, int a_iNumber2); unsafeが嫌なら [MarshalAs(UnmanagedType.U1, SizeConst = 21 * 1341)] byte Member5[,]; としてMember5 = new byte[21, 1341];
>>988 そうだった
すっかり知識が抜け落ちてて愕然
995 :
977 :2009/04/01(水) 09:48:39
UnmanagedType.LPStrとか UnmanagedType.BStrとか UnmanagedType.ByValArrayとか いろいろ試しましたが、どうにもうまく行かないので、 もう諦めてVB6でラップDLL作ってそれをC#で参照して 使うことにしました。 VB6のデバッガでもう少し粘るといいのかもしれませんが これで妥協しました。 いろいろありがとうございました。
MSDN見たか?まあ解決したならいいか
>>996 MSDNは 見まくり ですね。。
解決というか 逃げ ですけど、とりあえず
やれることはやれるようになったので。
VB6側の状況がよくわからずに
やみくもにやってもダメですね。
暇ができたら、ダミーの Library1.dll を作って
VB6から呼んでみて、中がどうなってるのか
確認してから再挑戦してみたいと思います。
999 :
デフォルトの名無しさん :2009/04/01(水) 12:33:10
MSDNよりPInvoke
1000 :
デフォルトの名無しさん :2009/04/01(水) 13:14:28
1000いただきまーす♪
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。