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

ふらっとC#,C♯,C#(初心者用) Part75

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2011/06/04(土) 20:29:47.16
このスレッドは
「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からない場合など、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。

なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ

ふらっとC#,C♯,C#(初心者用) Part74
http://hibari.2ch.net/test/read.cgi/tech/1304161005/

■関連スレ
C#, C♯, C#相談室 Part66
http://hibari.2ch.net/test/read.cgi/tech/1303889653/
ミスターサタンのC#相談室 
http://hibari.2ch.net/test/read.cgi/tech/1092656075/
VB.NET質問スレ(Part36)
http://hibari.2ch.net/test/read.cgi/tech/1301828549/
くだすれC++/CLI(初心者用)part2
http://hibari.2ch.net/test/read.cgi/tech/1268613679/
0002デフォルトの名無しさん2011/06/04(土) 20:29:57.99
■備考
コードの量が多い場合は下記サイトを使うなどしたほうがいいかも
http://ideone.com/
コードを貼り付けてRun codeのチェックをはずしてsubmitボタンを押すと
コードを鯖側にアップして専用のアドレスが発行されます。

直接貼る場合は下記サイトなどを利用してhtmlエンコードした方が
インデントも残って見やすいです
http://kawama.jp/php/encode_html.php
0003デフォルトの名無しさん2011/06/04(土) 20:34:39.92
>>1乙

MIDIそのものは楽譜データだけで音色は実装側次第だからなあ・・・
なんでいまさらそんな物を使うのか

前スレ>>999
System.Diagnostics.Debug.WriteLineとかではダメ?

0004デフォルトの名無しさん2011/06/04(土) 20:40:49.47
>>1
ギリギリでスレ立て乙!
0005デフォルトの名無しさん2011/06/04(土) 20:43:25.64
おっおっおっ
0006デフォルトの名無しさん2011/06/04(土) 20:45:53.37
起動すると1.wmvを再生して、1.wmvを再生し終わったら2.wmvを再生するプログラムです
http://ideone.com/iZDn4
起動後、1.wmvの再生は出来るのですが、
問題は再生終了後に2.wmvが読み込まれているみたいですが再生されません
手動で再生ボタンを押さないと2.wmvが再生できません
どう改善すると2.wmvも自動で再生できますでしょうか?
0007デフォルトの名無しさん2011/06/04(土) 20:52:39.66
対象プラットフォームを変更したらビルドできなくなったという経験はある
そのときは構成マネージャーのリストビューの「ビルド」というチェックボックスの
チェックがなんかしらんけど外れていた。けっこうトラップだと思う
0008デフォルトの名無しさん2011/06/04(土) 20:55:29.24
>>6
BeginInvokeでPlayするとか
0009デフォルトの名無しさん2011/06/04(土) 21:03:02.88
case (int)WMPLib.WMPPlayState..wmppsReady :
  this.axWindowsMediaPlayer1.Ctlcontrols.play();
  break;
と、readyになってからPlayしてみたらどう?(テストしていません)
0010デフォルトの名無しさん2011/06/04(土) 21:13:30.88
>>3
System.Diagnostics.Debug.WriteLine
だめでした

>>7
ありがとうございます構成マネージャをいじっていたら解決しました

C#AnyCPU DLLx64
コンパイルできない

C#AnyCPU DLLx86
コンパイル出来るがデバッグが使えない

C#x64 DLLx64
コンパイルデバッグ共にできる

C#x86 DLLx86
コンパイルデバッグ共にできる

AnyCPUは使わない事にしますありがとうございました
0011デフォルトの名無しさん2011/06/04(土) 21:53:20.75
>>9さんのコードを頼りにttp://blog1.aitacos.com/?p=1339をみつけてswitch文の所を修正して2.wmvが自動で再生されませんでした
BeginInvokeを検索して調べてみたのですが敷居が高くて手に届きません

http://ideone.com/KsWxy
0012デフォルトの名無しさん2011/06/04(土) 22:33:24.79
逆に考えるんだ、ちょうどこの機会に覚えるかと考えるんだ
0013デフォルトの名無しさん2011/06/04(土) 22:35:10.75
BeginInvokeはいいけどよ
そのwmpコントロールはどのスレッドで動いてるんよ
0014デフォルトの名無しさん2011/06/04(土) 22:39:43.16
そりゃメインスレッドだろ

BeginInvokeは別スレッドからの呼び出しのほかに
次以降のメッセージループで処理させるために使う場合がある
0015デフォルトの名無しさん2011/06/04(土) 22:45:25.02
>>6
そもそも、その独自メソッドをどこからコールしてるんだろ?と素朴な疑問が。。。
Timerとかから呼ぶ様にしてみては
0016デフォルトの名無しさん2011/06/04(土) 23:13:08.92
>>11
昔のソース見たらURIに一端空文字を入れてから操作しているな
こっちではソースは音楽ファイルだし、イベント発生させて他のクラスから
次のファイルをセットしているからどうなるか判らんが
0017デフォルトの名無しさん2011/06/04(土) 23:13:56.35
前に同じようなこと悩んだ時はこんな感じでやった。
http://ideone.com/n258k
詳しく知りたければDelphiだけどここ参照で。
http://hpcgi1.nifty.com/MADIA/DelphiBBS/wwwlng.cgi?print+200903/09030027.txt
0018デフォルトの名無しさん2011/06/04(土) 23:19:47.12
>>6のコードの
this.axWindowsMediaPlayer1.URL = @"C:\douga\2.wmv";
this.axWindowsMediaPlayer1.Ctlcontrols.play();
の次にMessageBox("test");を足して動かすと、何故こうなるのか分からないのですが2.wmvが自動的に再生できました
メッセージボックスを閉じると動画が停止されてしまうので何でこうなってしまうのか分かりません
>>12-17
今から参考にして調べてみます
0019デフォルトの名無しさん2011/06/04(土) 23:40:10.17
System.Windows.Forms.Timerは精度が悪いみたいなので代替できるもので精度を求める場合は
System.Threading.TimerとSystem.Timers.Timerのどちらがもっとも精度に長けてますか?
0020デフォルトの名無しさん2011/06/04(土) 23:42:39.52
Timersの方はThreadingの方をちょっと使いやすくしただけ
使ってる物は同じ
0021デフォルトの名無しさん2011/06/05(日) 00:03:32.21
C#で動画編集ソフトにあるような、タイムラインを使ったアプリを制作しています。
下記のようなフォームをイメージしているのですが、似た機能を見つけられません。
小さなことでも構わないので、何かしらご教授頂けますでしょうか・・・。よろしくお願いします。
http://brunhild.sakura.ne.jp/up/src/up501574.jpg
0022デフォルトの名無しさん2011/06/05(日) 00:05:46.84
タブとラベル(アイテム名って表示している部分)とスクロールバーくらいしかないね

後は全部自前で描け
0023デフォルトの名無しさん2011/06/05(日) 00:15:27.19
>>18
>>14が既に答えてるけど、これでいけた。
case (int)WMPLib.WMPPlayState.wmppsMediaEnded:
  this.BeginInvoke((MethodInvoker) (() => {
    axWindowsMediaPlayer1.URL = @"C:\douga\2.wmv";
    axWindowsMediaPlayer1.Ctlcontrols.play();
  }));
  break;
0024デフォルトの名無しさん2011/06/05(日) 00:19:24.11
>>21
タイムラインコントロール使えばいいじゃん
0025デフォルトの名無しさん2011/06/05(日) 00:34:32.66
>>18
解決したのかいな。頑張って書いたから乗せておく。
ttp://ideone.com/mPK2i

この方法はメディアプレイヤつかったことないとわからん。
要するにプレイリスト作ってプレイヤーに登録してるだけ。
0026デフォルトの名無しさん2011/06/05(日) 00:46:07.25
C#でDirectXを使う方法をC++/CLIで質問したんですが、C#だけでできるそうなので教えてください

「PInvoke で渡す構造体はC#側で用意してあげればいい」

というのは構造体をC#で作ってDllImportでC#で再定義して使うということでいいんでしょうか
DirectXInputのDLLはどこにあるんですか?SDKのDeveloperRunTimeの中から選ぶとマニフェストを含んでいないと言われます
0027デフォルトの名無しさん2011/06/05(日) 00:56:21.42
初級者ではなく完全な初心者がいきなりPInvokeとかギャグとしか言いようがないから1年経ってからまた来い
もう同じ質問するなよ
お前に言えることは全くない
0028デフォルトの名無しさん2011/06/05(日) 01:00:41.19
>>27は知らないだけ
0029デフォルトの名無しさん2011/06/05(日) 01:04:07.16
>>26
c#でDirectX使った事ないけど、こう言う本は見かけた事あるお

http://www.amazon.co.jp/gp/aw/d/487593419X/ref=mp_s_a_1?qid=1307203269&sr=8-1
0030デフォルトの名無しさん2011/06/05(日) 01:08:16.09
まずP/Invokeだけできるようになったらやれば?
0031デフォルトの名無しさん2011/06/05(日) 01:10:06.27
>>26
Microsoft.DirectX.DirectInput
とかってMDXの関連だっけ?
http://www.clks.jp/csg/dx003.html
http://techno-st.net/2008/04/24/visual-c.html

0032デフォルトの名無しさん2011/06/05(日) 01:14:37.75
dllはsystem32の中に入ってる(xinput1_1.dllなど)な
ただしこれ単体で呼び出していいものなのかは不明だ
0033デフォルトの名無しさん2011/06/05(日) 01:30:49.15
DllImport書いてやってみたら普通に動いた
コントローラー持ってないから関数が正常終了することしか確認できないけど…

たかが15行程度だし、この辺見ながら自分で書けよ
ref以外に特に引っかかりそうな部分無いしな

http://www.atmarkit.co.jp/fdotnet/dotnettips/024w32api/w32api.html
http://msdn.microsoft.com/ja-jp/library/bb174829%28v=VS.85%29.aspx
http://msdn.microsoft.com/ja-jp/library/bb174834%28v=VS.85%29.aspx
http://msdn.microsoft.com/ja-jp/library/bb174832%28v=VS.85%29.aspx
0034デフォルトの名無しさん2011/06/05(日) 01:31:10.01
ありがとうございます。
xinput1_1.dllもマニフェストなんたらのエラーが出ます。
開発で使えるようなDLLは用意されていないということですか?
defがないとすると使われることを想定してないということですよね
やはりLibと.hで使うにはC++CLIを使うしかないんでしょうか?
C++CLIを通すならC++でDLLにしてC#から使う方が手間がかからないと思うんですが
ラッパーとして使うC++CLIの存在意義を考えるとネイティブからの変換目的の為だけに使うことはないと思うんですが
みなさんはどうやってアンマネージDirectXをC#で使ってるんですか?
0035デフォルトの名無しさん2011/06/05(日) 01:32:03.67
>>33
ありがとうございます!がんばります
0036デフォルトの名無しさん2011/06/05(日) 01:36:09.60
XInputGetState DllImportでググッたら…。
http://code.google.com/p/x360ce/source/browse/trunk/x360ce.App/Microsoft/Xna/Framework/Input/UnsafeNativeMethods.cs?r=403
0037デフォルトの名無しさん2011/06/05(日) 01:53:38.82
非同期デリゲートのBeginInvokeとEndInvokeについてまったく理解できません
わかることはBeginInvokeがデリゲートの処理開始時、EndInvokeが処理終了時ということくらいしかわかりません・・・
よくわかるように教えてもらえないでしょうかないでしょうか?・・・
0038デフォルトの名無しさん2011/06/05(日) 01:54:48.03
すいません構造体を書く手間がマネージ変換を上回ったのでやはりC++CLIを使うことにしました
ありがとうございました!
0039デフォルトの名無しさん2011/06/05(日) 01:58:56.79
>>37
>わかることはBeginInvokeがデリゲートの処理開始時、EndInvokeが処理終了時ということくらいしかわかりません・・・

理解してるじゃん
それ以外に何もないよ
0040332011/06/05(日) 01:59:56.19
>>38
二度と来るなよ
0041デフォルトの名無しさん2011/06/05(日) 02:07:56.48
根性なし極まりないわね…。
0042デフォルトの名無しさん2011/06/05(日) 02:08:28.55
>>40
すいません出来たんですが、XNAを使わない理由はDirectShowとDirectComputoも使いたかったので統一したかったんです
なので総合的に考えてC++CLIにすることにしました。
C#から直接使うのは使い物にならないということが分かって勉強になりましたありがとうございました
0043デフォルトの名無しさん2011/06/05(日) 02:12:02.13
だったらXInput試すまでもねーじゃねえか
本当に頭が可笑しいんだな
0044デフォルトの名無しさん2011/06/05(日) 02:14:41.11
XInputをXNAでやっていたら
DirectshowをC#で使う方法を質問していたと思います
XInputからやってまずかったでしょうか?
0045デフォルトの名無しさん2011/06/05(日) 02:15:52.56
いいから死んでおけ
0046デフォルトの名無しさん2011/06/05(日) 03:00:10.01
そういう発言はいただけませんねぇ〜。
私の彼女は今プログラミング中ですがとてもいいですよ。
0047デフォルトの名無しさん2011/06/05(日) 04:48:31.16
System.IO.Stream stream = File.Open("test.bin", FileMode.Open);
として開いて、
var sr = new StreamReader(stream, System.Text.Encoding.ASCII);
で数行読んだ後、
var br = new BinaryReader(stream);
そこからバイナリで読みたいんですが、続きがあるのに
br.ReadByte();にてEndOfStreamExceptionが投げられます。
途中からReaderを切り替えることはできないんですか?
0048デフォルトの名無しさん2011/06/05(日) 05:09:50.96
そんなこと無いはずだけどなあ

続きがあるってことはEndOfStreamExceptionをcatchした時
Stream.Position < Stream.Lengthになってるのを確認してるんだよな
0049デフォルトの名無しさん2011/06/05(日) 05:12:01.08
あ、バッファリングのためにStreamReaderが先読みしてるんじゃねえか?
0050デフォルトの名無しさん2011/06/05(日) 05:53:01.78
>>49
ありがとうございます。
確認してみたところ、その可能性がとても高そうです。
StreamReaderにその分だけストリームを進めるように指定するには
どうすればいいですか?
0051デフォルトの名無しさん2011/06/05(日) 07:16:38.00
最初の数行をバイナリで読めばいいのに
0052デフォルトの名無しさん2011/06/05(日) 08:08:36.54
>>34はネイティブdllをプロジェクトの参照に突っ込もうとしてたんじゃないかと
0053デフォルトの名無しさん2011/06/05(日) 12:47:27.61
VC#でWindowsのGUIソフトを作りたいと思います
プロジェクトを作るとForm1.csっていうファイルとprogram.csってファイルが出来ました
起動したときに必ず処理したいことって言うのはprogram.csのMain()の中に書くのと、
Form1.csのForm1()かたはForm1_Load()の中に書くのどちらで書くべきでしょうか?
0054デフォルトの名無しさん2011/06/05(日) 12:59:42.27
またそういう叩いてくれと言わんばかりの質問を全力でするかね
0055デフォルトの名無しさん2011/06/05(日) 13:00:55.60
>>53
form1を作る前に必ず処理したいなら、Main
0056デフォルトの名無しさん2011/06/05(日) 13:06:11.91
その処理ってのが Form1 固有の物なら、Form1.cs のどこか。
たとえば複数の画面をもってて、広く影響を与えるなら Main という考え方もある。
0057デフォルトの名無しさん2011/06/05(日) 13:07:00.05
まあ初心者用ってスレタイだしな
あまりカリカリしてもするだけ損だ
0058デフォルトの名無しさん2011/06/05(日) 13:27:14.96
OnLoadに初期化を書く作法は、たぶんVBから来てるんだと思うが、
ShowDialogで同じインスタンスを再利用しないとしても本来ちょっと奇妙だよな。

もちろん一部の処理はコンストラクタには書けないから仕方が無い面はあるんだけど。
0059デフォルトの名無しさん2011/06/05(日) 13:48:16.61
>>54
巣に帰れzk
0060デフォルトの名無しさん2011/06/05(日) 15:03:26.51
private void conBtn_Click(object sender, EventArgs e)
{
StartAccept();
}

private static void StartAccept(Socket server)
{
server.BeginAccept(
new System.AsyncCallback(AcceptCallback), server);
}
上記のコードを実行すると
>引数を 0 個指定できる、メソッド 'StartAccept' のオーバーロードはありません
というエラーが出ます。どなたか解決策を教えてくれないでしょうか?
0061デフォルトの名無しさん2011/06/05(日) 15:08:12.56
StartAccept()の引数を変える
0062デフォルトの名無しさん2011/06/05(日) 15:13:56.20
private void conBtn_Click(object sender, EventArgs e)
{
StartAccept();
}

private static void StartAccept()
{
Socket server = new Socket();
server.BeginAccept(
new System.AsyncCallback(AcceptCallback), server);
}
このように変えてみたけど今度は
> 'System.Net.Sockets.Socket' に、引数を 0 個指定できるコンストラクターがありません。
って出でしまう。

0063デフォルトの名無しさん2011/06/05(日) 15:21:46.28
子供じゃないんだから同種のエラーでいちいち質問すんなよ
0064デフォルトの名無しさん2011/06/05(日) 15:26:24.96
これは「引数を0個指定できる」の意味を教えてやったほうが良かったのかもな…
0065デフォルトの名無しさん2011/06/05(日) 15:47:42.20
string[] files = System.IO.Directory.GetFiles("C:\\,test", "*.txt", System.IO.SearchOption.TopDirectoryOnly)
これで拡張子txtのファイルのみ一覧取得できるのですが、
txt以外にdocも取得したいと思います
string[] files = System.IO.Directory.GetFiles("C:\\,test", "*.txt; *.doc", System.IO.SearchOption.TopDirectoryOnly)
で出来ると思ったのですが出来ませんでした
C#4.0で方法ございませんか?
0066デフォルトの名無しさん2011/06/05(日) 16:04:12.36
GetFiles()に拡張子を複数指定できる機能は無い。
ディレクトリ内のファイルを列挙して文字列比較か正規表現でも使って抽出すればいい。
0067デフォルトの名無しさん2011/06/05(日) 16:06:34.34
そんなことしなくても2つのパターンで検索してマージするだけでしょ。
智恵無さ杉
0068デフォルトの名無しさん2011/06/05(日) 16:06:59.12
string[] files = System.IO.Directory.GetFiles("C:\\test", "*", System.IO.SearchOption.TopDirectoryOnly)
.Where(file => { var ext = System.IO.Path.GetExtension(file); return ext == ".txt" || ext == ".doc"; })
.ToArray();
0069デフォルトの名無しさん2011/06/05(日) 16:16:12.58
2回検索してマージとか無駄杉
この点は.Net Framework5.0で改善してもらいたいものだ
0070デフォルトの名無しさん2011/06/05(日) 16:26:16.58
素でできなかったら工夫すりゃいいだけのことだろ
0071デフォルトの名無しさん2011/06/05(日) 16:43:06.28
.NET4でEnumerateFilesが追加されている件
0072デフォルトの名無しさん2011/06/05(日) 17:10:30.81
FindFirstFileができた頃からの仕様だし変更されるわけがない
0073デフォルトの名無しさん2011/06/05(日) 17:32:31.02
自分以外のウィンドウのクライアント領域のスクリーン座標を取得したいんですが、
ClientRectangle -> PointToClientを他のアプリケーションに対して実行することはできますか?

GetClientRectを使おうとしたけど挫折しました…
0074デフォルトの名無しさん2011/06/05(日) 17:42:09.12
できない
0075デフォルトの名無しさん2011/06/05(日) 17:44:33.10
自分以外のウィンドウのクライアント領域のスクリーン座標を取得するには
GetClientRectじゃないとダメ、という話で大丈夫ですか?

勉強してきます…
0076デフォルトの名無しさん2011/06/05(日) 18:02:20.89
>クライアント領域のスクリーン座標
ウィンドウハンドルがわかってるならGetWindowRectでスクリーン座標が取れるが

[DllImport( "user32.dll" )]
static extern bool GetWindowRect( IntPtr hWnd, out RECT pRect );

struct RECT
{
 public int left;
 public int top;
 public int right;
 public int bottom;
}
0077デフォルトの名無しさん2011/06/05(日) 18:07:01.41
以前特定ウインドウのSSをとるアプリ書いたので探してくるわ
0078デフォルトの名無しさん2011/06/05(日) 18:18:18.21
サンプル
http://ideone.com/e4u8T

これは最前面のウインドウの位置とサイズを取得するだけ
任意のウインドウのハンドルが欲しければそれなりのAPIを使ってね
0079デフォルトの名無しさん2011/06/05(日) 18:30:34.25
皆さん回答ありがとうございます
>>76-78
申し訳ないんですけど、欲しいデータは
「任意のウィンドウの『クライアント領域の』スクリーン座標」なんです…

GetWindowRectで帰ってくるのはウィンドウのスクリーン座標なので、申し訳ないんですが上手くいかない感じです…
0080デフォルトの名無しさん2011/06/05(日) 18:36:33.33
GetWindowRectとGetClientRectなんて
呼び出し手順的には関数名ぐらいしか変わらないじゃん…
0081デフォルトの名無しさん2011/06/05(日) 18:37:22.52
static extern bool GetWindowRect( IntPtr hWnd, out RECT pRect );
これを

static extern bool GetClientRect( IntPtr hWnd, out RECT pRect );
するだけで動くだろ

しかしまあP/Invoke関連の質問がバカ丸出しであることだ
酷いね
0082デフォルトの名無しさん2011/06/05(日) 18:38:46.90
>>80
いや、GetClientRectで返ってくるデータってスクリーン座標じゃないですよね?
そこで詰まってるんです…
0083デフォルトの名無しさん2011/06/05(日) 18:39:11.12
自分で求める先も見えてて検索するだけでしかも答えに近いコードまでもらって
何もできないって終わってると思う
0084デフォルトの名無しさん2011/06/05(日) 18:40:12.87
>>82
ぐぐれよかす
http://www.geocities.jp/ky_webid/win32c/008.html
0085デフォルトの名無しさん2011/06/05(日) 18:42:11.37
>>84
ありがとうございました
ClientToScreenっていう関数があるんですね…
0086デフォルトの名無しさん2011/06/05(日) 18:43:06.77
なんかここの所多いよな
0087デフォルトの名無しさん2011/06/05(日) 18:53:16.90
ググらないからカスなのではない
カスゆえにググれない
0088デフォルトの名無しさん2011/06/05(日) 19:29:22.94
大目に見れ
0089デフォルトの名無しさん2011/06/05(日) 19:32:29.65
全部答えようとするからムカついてくるんだよw
0090デフォルトの名無しさん2011/06/05(日) 19:40:25.46
意味不明
0091デフォルトの名無しさん2011/06/05(日) 19:48:52.45
ちょろっと
「>>xx
ググれば出る」

で十分だろ
0092デフォルトの名無しさん2011/06/05(日) 20:15:57.67
なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
0093デフォルトの名無しさん2011/06/05(日) 20:18:16.94
お断りよ
0094デフォルトの名無しさん2011/06/05(日) 20:37:19.02
C#でmp3やwmaやwavファイルにエフェクトを掛けたり加工したりする方法を学びたいのですが
数ある書籍の中からおすすめの本ってございませんか?
0095デフォルトの名無しさん2011/06/05(日) 20:41:42.09
C#じゃなくても出来ることなのでそういうのに触れてる本はないですね
0096デフォルトの名無しさん2011/06/05(日) 21:10:01.38
>>23
>>25
ありがとうございます
いろいろやり方がありますね
0097デフォルトの名無しさん2011/06/05(日) 23:04:20.85
FLVファイルの再生が行いたく、海外のサイトを参考に以下のように書きました
ツールボックスにShockwave Flash Objectを追加してフォームに配置してます
実行しても画面が白いままで右クリックすると「ムービーが未ロード」となってました
読み込まれれば実行できる?のかと思うのですがどうかお知恵を拝借させてください
http://ideone.com/fYnXP
0098デフォルトの名無しさん2011/06/05(日) 23:15:28.17
そもそも直接FLV再生できたっけ?
http://www.codeproject.com/KB/audio-video/flashexternalapi.aspx
ちょっと複雑なことやってるようだが
0099デフォルトの名無しさん2011/06/05(日) 23:16:06.77
フォームにAxShockwaveFlash(axShockwaveFlash1)が配置してある状態で
さらにAxShockwaveFlash(flash)を生成してフォームのAxShockwaveFlashに追加する意味が分からない
0100デフォルトの名無しさん2011/06/05(日) 23:18:29.65
面白そうなのでこっちでもやってみよかと思ったけど
AxShockwaveFlashObjectsの参照設定ができねえ
どこにあるんだ?
0101デフォルトの名無しさん2011/06/05(日) 23:20:11.85

ActiveX版Flashを入れる。
参照にCOMコンポーネントからShockwaveFlashObjectsを追加する。
メニューのツール→ツールボックスアイテムの選択→COMコンポーネントからShockwaveFlashObjectを追加する。
デザイナで配置する。
■ このスレッドは過去ログ倉庫に格納されています