- 1 名前:デフォルトの名無しさん [2009/02/04(水) 23:26:55 ]
- (#゚ー゚)つ < C#、.NETの話題はこちらでどうぞ。
前スレ C#, C♯, C#相談室 Part50 pc11.2ch.net/test/read.cgi/tech/1229661915/l50 Visual C# 2008 Express Edition 日本語版 www.microsoft.com/japan/msdn/vstudio/express/vcsharp/ その他テンプレ>>2-5くらい
- 992 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 19:15:52 ]
- VB、C#混合になってしまうが
VB6で>>877の標準モジュールを含むプロジェクトを作って VB.NETのアップグレードウイザードにかける。 やってみたがTODOが残るな・・・これもで手を入れないといけないようだ。
- 993 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 19:18:16 ]
- 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];
- 994 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 22:01:27 ]
- >>988
そうだった すっかり知識が抜け落ちてて愕然
- 995 名前:977 mailto:sage [2009/04/01(水) 09:48:39 ]
- UnmanagedType.LPStrとか
UnmanagedType.BStrとか UnmanagedType.ByValArrayとか いろいろ試しましたが、どうにもうまく行かないので、 もう諦めてVB6でラップDLL作ってそれをC#で参照して 使うことにしました。 VB6のデバッガでもう少し粘るといいのかもしれませんが これで妥協しました。 いろいろありがとうございました。
- 996 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 09:55:35 ]
- MSDN見たか?まあ解決したならいいか
- 997 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 10:17:26 ]
- C#, C♯, C#相談室 Part52
pc12.2ch.net/test/read.cgi/tech/1238548552/
- 998 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 10:58:25 ]
- >>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を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
|

|