1 名前:デフォルトの名無しさん mailto:sage [2013/07/06(土) 00:14:20.06 ] 前スレ C#, C♯, C#相談室 Part79 toro.2ch.net/test/read.cgi/tech/1363632378/ Visual Studio 2010 Express www.microsoft.com/japan/msdn/vstudio/express/default.aspx Visual Studio 2012 Express www.microsoft.com/visualstudio/jpn/products/visual-studio-express-products
44 名前:デフォルトの名無しさん [2013/07/12(金) 00:05:40.27 ] >>42 前者は__makerefで参照を取得してFieldInfo.SetValueDirect 後者はDynamicMethodとILGeneratorを使用してcallvirtではなくcall命令を発行
45 名前:デフォルトの名無しさん mailto:sage [2013/07/12(金) 07:34:18.83 ] >>44 それは分かってるんだけど、 全て動的に解決しないといけない状況だからできないんだよね __makeref も Emit もコンパイル時に型やメソッドが判明していないと使えないから
46 名前:デフォルトの名無しさん mailto:sage [2013/07/12(金) 07:36:04.69 ] いや、違った __makeref は TypedReference が持ち回りでいないから使えないんだった
47 名前:デフォルトの名無しさん mailto:sage [2013/07/12(金) 16:35:26.25 ] 教えてください〜!! .NETのIPCチャネルを使用してプロセス間通信を実現したいのですが、 サーバ側のプロセスが再起動した場合、クライアント側では何を基準 に再接続すればいいのでしょうか? また、有効期限(InitializeLifetimeService)が無限にしているのですが、 それって、サーバのプロセスが終了すると解放してくれますか? よろしくお願いいたしますm(_ _)m
48 名前:47 mailto:sage [2013/07/12(金) 16:47:23.75 ] ちなみにクライアントは「受け」だけで、クライアントから要求することはありません。
49 名前:デフォルトの名無しさん mailto:sage [2013/07/12(金) 16:49:13.90 ] 再接続? .NET RemotingにせよWCFにせよメソッド呼び出しの形式なんだから 普通は接続なんて意識しないと思うのだけど > それって、サーバのプロセスが終了すると解放してくれますか? そうじゃなきゃ一体どこに実体を持つってのさ
50 名前:デフォルトの名無しさん mailto:sage [2013/07/12(金) 17:12:58.69 ] >.NETのIPCチャネル そんなものはありません
51 名前:47 mailto:sage [2013/07/12(金) 17:33:47.24 ] >>再接続というのは 再起動後のサーバーのオブジェクトを参照できるようにしたい。と言う意味です。 方法として、オブジェクトにIDisposableかなにか入れて、Disposeが呼ばれたときに フラグを立てて、クライアントに再接続要求を出すくらいでしょうか・・・ .NETでIPCチャネルでした。すいません。
52 名前:デフォルトの名無しさん mailto:sage [2013/07/12(金) 17:46:32.31 ] 基本的にメソッド呼び出しの度に接続するんだから再接続も何もないって話なんだけど サーバ側のシングルトンオブジェクトが再作成されたときにクライアントが処理を行いたい? あと一般的にクライアントがサーバオブジェクトを呼び出す形だが クライアントが受けて要求することはないって構造がよく分からん
53 名前:47 mailto:sage [2013/07/12(金) 17:54:03.05 ] MarshalByRefObjectにイベントをつけて以下の様にする予定です。 public class Test:MarshalByRefObject { public event Action<bool> TestEvent; public void OnTestEvent(bool test) { if (TestEvent != null) TestEvent(test); } } クライアントはサーバーオブジェクトのTestEventにデリゲートを関連付ける といった形です。 この場合に、サーバーのオブジェクトがリリース(解放)されたかどうかを どうやってクライアントが知り得るのでしょうか?
54 名前:デフォルトの名無しさん mailto:sage [2013/07/12(金) 17:58:58.89 ] サーバーからクライアントへ「これから破棄するよ」って送るか、 クライアント側からアクセスした時にアクセスできないことから判断する
55 名前:デフォルトの名無しさん mailto:sage [2013/07/15(月) 02:13:45.57 ] 質問なんですが
56 名前:デフォルトの名無しさん mailto:sage [2013/07/15(月) 03:13:34.85 ] お断りだ
57 名前:デフォルトの名無しさん mailto:sage [2013/07/15(月) 07:08:59.81 ] お、男割りで
58 名前:デフォルトの名無しさん mailto:sage [2013/07/15(月) 15:09:25.12 ] 質問です。 public class A{ string text; public A(string text){ } }
59 名前:デフォルトの名無しさん mailto:sage [2013/07/15(月) 15:12:09.20 ] クラス内の変数なのかどうかがわかるように変数名決めたほうがいい
60 名前:デフォルトの名無しさん mailto:sage [2013/07/15(月) 15:16:13.90 ] 難解な質問だな
61 名前:デフォルトの名無しさん mailto:sage [2013/07/15(月) 15:16:51.14 ] 書いてる途中で送信してしまいました。 しかも書いてる途中でなんとなく自己解決できてしまったので、 とりあえず忘れてください。もうしわけございませんでした。
62 名前:デフォルトの名無しさん mailto:sage [2013/07/15(月) 20:07:11.34 ] 質問なんですが visualstudioでSQLサーバーを使って 所持しているマンガの在庫管理プログラム的なものを作ったんですが そのプログラムをソケット通信を使って 自分のパソコンをサーバーにして 別のパソコンで動かすようにするのは可能でしょうか? もし可能ならやり方を教えていただけないでしょうか?
63 名前:デフォルトの名無しさん mailto:sage [2013/07/15(月) 20:13:40.65 ] わざわざソケット使わないと駄目なの? それは要件か? 接続文字列弄るだけで接続できんだろ msdn.microsoft.com/ja-jp/library/ms191260%28v=sql.105%29.aspx それともサーバープログラムはSQLサーバーとは別に存在させたいのか? それならSQLは本質的に全く関係ないね
64 名前:デフォルトの名無しさん mailto:sage [2013/07/15(月) 23:48:35.71 ] ソケットの勉強を始めようと思って 自分の作ったものでソケットとつなげたいと思ったんですが そういう設定があったんですね。 では他にソケットを勉強するにはどういうものがあるでしょうか?
65 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 00:21:30.42 ] 時代遅れだろ ASP.NETでサーバー側だけで作るか、 DB-Webサービス-HTTP-クライアント の構成にすればいいのに
66 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 00:30:32.38 ] 定番はチャット
67 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 08:49:50.34 ] C#で作ったアプリを他のPCで動かしたいのですが 「○○が見つかりません」とか「○○が登録されてません」とかで、 結局、開発環境をインストールして1回ビルドするまでは、 起動できませんでした。 Visual C# 2010 Express 追加の参照設定 MSScriptControl、AxWMPLb VisualBasic.PowerPacks これらに必要なファイルをコピー・登録して アプリを実行できるようにする 無料のインストーラはありますか? または、コピー・登録をバッチで実行するような 方法がありますか?
68 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 09:14:35.19 ] そういう時は再頒布でぐぐれ
69 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 10:36:41.15 ] >>68 ありがとうございます VisualBasic.PowerPacksのインストーラを見つけられたのですが、 AxWMPLibがインストールされているにもかかわらず 登録されてませんとでます。 また、MSScriptControlは関係なかったようです。
70 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 11:24:41.97 ] そもそもVisualBasic.PowerPacksなんて使うなハゲ Microsoft.VisualBasic.PowerPacks.Vs.dll は単体配布は認められてないみたいですね。 AxInterop.WMPLib.dllとかInterop.WMPLib.dllみたいなファイルが実行ファイルと同じフォルダにできてませんか? それを一緒に配布せんかいヅルムケが
71 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 11:29:00.79 ] 激しく正論
72 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 12:08:33.45 ] インストーラーの作成すら理解してないとかコーディング以前の問題だろwww しかもExpressなのに2008〜2012と一番糞重い2010使ってるとかワロスwww 初心者質問スレいけよカスwww
73 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 12:20:26.07 ] >>72 おまえは消えろ
74 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 12:43:45.10 ] >>70 ありがとうございます。 PowerPacksはLineShapeのために使ってます。 他に、線を引くだけの良い手段があったら教えてください。 AxInterop.WMPLib.dllとInterop.WMPLib.dllが同じフォルダに出来ていて 一緒にコピーしましたが、変りませんでした。 DebugフォルダまたはReleaseフォルダごとコピーしましたが同様でした。 >>72 新しいプロジェクトの一覧にインストーラがありませんでした。 他のインストーラでも良いので、無料で利用できるものがあったら教えてください。 普段は2010のプロジェクトを2012で開いてますが、 やはりインストーラのプロジェクトはありませんでした。
75 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 13:10:10.16 ] 前にも言った気がするがWMPはバージョン違いかと
76 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 13:12:31.06 ] >>73 おまえが消えろwww >>74 learn.flexerasoftware.com/content/IS-EVAL-InstallShield-Limited-Edition-Visual-Studio 登録したらメールでシリアル送られてくるからインスコ、VSからプロジェクトのインストーラー作ればBuildで自動的に作成される
77 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 13:27:55.23 ] >>75 ありがとうございます。 すいません、過去ログ拝見してませんでした。 バージョンの違いを吸収する方法はありませんか? >>76 ありがとうございます。 まずは、これを試してみたいと思います。
78 名前:デフォルトの名無しさん mailto:sage [2013/07/16(火) 15:09:57.67 ] >>77 バージョンの違いを吸収する方法はやった事ないからわからん
79 名前:デフォルトの名無しさん mailto:sage [2013/07/17(水) 19:31:53.96 ] おしえてくださいー! IPCチャネルのナマエなのですが 以下の二つは同じプロセスで共存できないですよね? ipc://A/B ipc://C/D やるとしたらこうするしかないですか? ipc://B/A ipc://C/A ipc://D/A ipc://E/A
80 名前:デフォルトの名無しさん mailto:sage [2013/07/17(水) 20:18:06.38 ] public abstract class ObjR : MarshalByRefObject { public abstract void Do(); } public class ObjC : ObjR { public override void Do() { Console.WriteLine("C"); } public class ObjD : ObjR { public override void Do() { Console.WriteLine("D"); } var c1 = new IpcServerChannel("a", "c"); ChannelServices.RegisterChannel(c1, false); var c2 = new IpcServerChannel("b", "d"); ChannelServices.RegisterChannel(c2, false); RemotingConfiguration.RegisterWellKnownServiceType(typeof(ObjC), "e", WellKnownObjectMode.SingleCall); RemotingConfiguration.RegisterWellKnownServiceType(typeof(ObjD), "f", WellKnownObjectMode.SingleCall); var c = (ObjR)Activator.GetObject(typeof(ObjR), "ipc://c/e"); c.Do(); c = (ObjR)Activator.GetObject(typeof(ObjR), "ipc://d/f"); c.Do();
81 名前:デフォルトの名無しさん [2013/07/17(水) 21:26:46.19 ] datatable view datasource ↑C#3日目だけどこのへんの関係がよくわからん だれかわかりやすくおしえて
82 名前:デフォルトの名無しさん mailto:sage [2013/07/17(水) 21:29:22.96 ] IListSourceとかいろいろ絡むんで文字では説明しづらい