1 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 11:19:36 ] 前スレVB.NET質問スレ (Part19) pc11.2ch.net/test/read.cgi/tech/1168585041/
159 名前:デフォルトの名無しさん mailto:sage [2007/03/16(金) 10:09:26 ] VB.NET2003でソフトを動作させていると IOExceptionが発生し、内容は このコマンドを処理するのに必要な記憶域をサーバーで確保できません こんなエラーが時々出る様子 やっている処理は以下のようなもの(普通にありえないんだが別会社のソフトの関係で仕方なくこうなっている) OSはすべてXPのSP2 ウィルスバスターインスコ済み 一定間隔(処理完了から次の処理開始までが10秒ほど) PC2〜10からPC1にある大量のファイル(10000ほどある時もある)を全てなめて計算しているんだが このときに出ている模様 で、検索してみるとサービスで使用しているスタック領域が不足しているので(XPのデフォは15)、これを現在の値から引き上げてやる模様 これが不足する理由ってのがよくわからないけど、他の人は単純に20とか30にまで引き上げてやれば解決しているみたい 外部から共有フォルダに接続してガリガリ読み込むと単純にネットワークサービスが使うメモリが不足するって事なのかな? あと、これは・・・PC1に対して行うのかPC2〜10に対して行うんだろうか・・・ PC1だとは思うけどレジストリなのでおいそれと変えたくない予感 もし、何か知ってる人居たら教えてくれないか?
160 名前:デフォルトの名無しさん mailto:sage [2007/03/16(金) 10:42:42 ] >>159 その質問に答えられるのはエスパーかペテン師ぐらいだろう。 VB.NET2003でどんなソフトを作ってんのよ。WinFormアプリかサービスか、 通信は共有フォルダなのか独自にやってるのかはっきりしろ。
161 名前:デフォルトの名無しさん mailto:sage [2007/03/16(金) 10:54:54 ] >>160 ごめ、説明不足 WinFormアプリで PC1の共有フォルダを介してPC1のファイルを PC2〜10のWinFormアプリ各々がチェックしに行ってる状態 PC1のレジストリにはIRPStackSizeの項目は設定されていない また、パフォーマンスの詳細設定で パフォーマンスの優先はプログラム メモリ使用量はプログラム なぜか仮想メモリは370〜700固定 IRPStackSizeの変更後の値をネットで調べると15が多いようだが マージンとってそれよりも大きな値(20〜30とか)に設定しても大丈夫なのかな? 出来れば設定値の基準値が知りたいところではあるけれど・・・ また、PC1では基本的に操作しないのでパフォーマンス設定も サーバOSのデフォのように変えてやったほうがいいんだろうか? PC1の大まかなスペックはP4 2.8Gでメモリ512M ん〜・・・説明へたでゴメ
162 名前:デフォルトの名無しさん mailto:sage [2007/03/16(金) 11:00:38 ] >>148 Webサービスでがんばれ
163 名前:デフォルトの名無しさん [2007/03/16(金) 12:45:40 ] TextBoxのMaxLengthプロパティってディフォルトで32767文字もあるけれど、 10文字で十分なのだけれど、この値が大きくても小さくても、プログラム 起動してタスクマネジャでメモリ使用量比べても、余り違わないのだけれど、 これはどういうこと?1000個のTextBoxでテストしてみたが良く分からない。
164 名前:デフォルトの名無しさん mailto:sage [2007/03/16(金) 12:48:18 ] 入力を制限しているだけでそれ以上の意味はない
165 名前:デフォルトの名無しさん [2007/03/16(金) 12:55:23 ] >164 知らんかった。39!
166 名前:デフォルトの名無しさん [2007/03/16(金) 13:41:02 ] 馬鹿のイメージでは、メモリアロケーションしてるんかい? きょうびの高級言語、そんなにせこせこしてねーよ。
167 名前:デフォルトの名無しさん mailto:sage [2007/03/16(金) 15:04:28 ] 意味が分からない
168 名前:デフォルトの名無しさん [2007/03/16(金) 19:06:31 ] 質問、Excelなんかが公開してるCOMオートメーションをVB.NETから使う時なんですが。 Excel側のイベントでチェックボックスのチェック状態を変更すると、以下の例外が出ます。 System.Reflection.TargetInvocationException' の初回例外が mscorlib.dll で発生しました。 COMのイベント内で自アプリのフォーム上のコントロールなんかを操作ってどうやったらいいでしょう。 とりあえずExcel側で新しいブックが作成された時のイベント(NewWorkbook)を使ってみたサンプルが 以下です。 Public Class Form1 Private WithEvents m_objExcel As Excel.Application Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load m_objExcel = New Excel.Application m_objExcel.Visible = True CheckBox1.Checked = False End Sub Private Sub Form1_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed m_objExcel = Nothing End Sub Private Sub m_objExcel_NewWorkbook(ByVal Wb As Excel.Workbook) Handles m_objExcel.NewWorkbook CheckBox1.Focus() CheckBox1.Checked = True End Sub End Class VB6だと動きますが、やっぱりVB.NETだとお作法が違いますよね
169 名前:デフォルトの名無しさん mailto:sage [2007/03/16(金) 20:19:54 ] ワロタ
170 名前:デフォルトの名無しさん mailto:sage [2007/03/17(土) 21:18:29 ] おまえらって賢いな
171 名前:168 mailto:sage [2007/03/18(日) 01:11:07 ] 解決しました .NET Fremawork1.1のC#しか扱ったことなかったのですが、2.0以降ではサブスレッドから Windowのコントロールにアクセスすると例外が起こるんですね。 1.1の時はたまたま動いていたと。 orz ちなみにInvoke()呼び出しと、m_objExcelの操作をサブスレッドで実行するように変更したら 動くようになりました。 めったに.NETのC#もVBも使わないんで結構忘れますね。 あと書き忘れてましたが VisualStudio2005使ってます。(最近買いました)
172 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 01:19:03 ] >>171 ついでにCOM相互運用とかも見とくといいんでない?
173 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 01:22:41 ] ttp://jeanne.wankuma.com/tips/programing/releasecom.html こんな開放ってやっぱり必要なの?
174 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 01:25:39 ] 自分しか使わないもんなら不要。 それで困らなければ不要。 立ち上げてすぐ落とすようなもんなら大抵不要。 そうでなければ必須。
175 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 01:26:36 ] >>174 thx
176 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 01:28:38 ] >>172 ちょうどHELPでそこ読みながらやってました でも.NETメインじゃないんで熟読するの辛いですね >>173 やらないとアプリ終了時に例外が出ますね でも、やらなくてもCOMのローカルサーバーはちゃんと終了するんで 参照カウントはデクリメント(Release)されてるのかも
177 名前:デフォルトの名無しさん [2007/03/18(日) 12:09:49 ] >>173 やっとかないアンマネージドリソースはフレームワークが勝手に開放するような仕組みもって無いんで解放できないんじゃ・・・? というわけで仕方なくCOM使う場合は必ず使ってる ただ、ラッパクラスAをさらにラップしたクラスB作ったら、Bの解放のタイミングでフレームワークがCOMオブジェクトリリースしてくれないかな? とか淡い期待抱いてるけど
178 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 12:21:01 ] >>173 使うことが推奨だが、 >COM オブジェクトを扱う場合は、参照の解放を常に意識する必要があります。 >使用した COM オブジェクトの参照カウントが、正しくデクリメントされていないと「メモリ リーク」を起こします。 は明らかな間違い。いい加減なおして欲しいよ。
179 名前:デフォルトの名無しさん [2007/03/18(日) 12:35:03 ] >>178 何が間違ってんだ、とぼけたこと抜かしてんなよボケ
180 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 12:36:46 ] >>178 ”メモリリーク”を何に直せばいいの?
181 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 13:03:03 ] 微妙な問題ではあるが、MSDNフォーラムのこの話題が参考になりそう。 forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=748277&SiteID=7 COMの参照カウンタはRCWが管理している。 ReleaseComObjectはCOMの参照カウンタそのものではなくRCWの参照カウンタを管理するもの。 RCWの参照ポインタがゼロのなるかGCされればCOMの参照カウンタはデクリメントされる。 RCWはReleaseComObjectで開放すべきであり、GCによる開放はフェイルセーフ的なものと考えるべき。
182 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 13:30:27 ] >>180 >COM オブジェクトを扱う場合は、参照の解放を常に意識する必要があります。 COM オブジェクトを扱う場合は、参照の解放を意識する必要があります。 >使用した COM オブジェクトの参照カウントが、正しくデクリメントされていないと「メモリ リーク」を起こします。 使用したRCWの参照カウントが正しくデクリメントされていないと期待するタイミングでCOM オブジェクトが開放されません。
183 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 13:32:24 ] >>182 あらゆる意味で不完全燃焼だ
184 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 13:34:37 ] そんな文章の校正屋みたいなことして楽しいのかね。奇特な奴。 どうせ何か書くなら物事自分の頭でまとめた結果をアウトプットしろよ
185 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 13:49:41 ] そりゃま、「全部GCでOKww手動でやる奴は馬鹿!」とか書いたら爆釣りで完全燃焼だろうけどさw
186 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 14:21:11 ] >>184 校正って、間違ってんだろ
187 名前:デフォルトの名無しさん mailto:燃焼系アミノ式 [2007/03/18(日) 17:13:13 ] VB6時代のNothing論争に似てる。 Sub XX Dim Obj As New ActiveX.Hoge ' いろいろな処理 Set Obj = Nothing End Sub 最後のNothingがないとメモリーリークが起きると言い張るのが必ずいた。 実害はないから頭の悪いプログラマーには全部Nothingを付けされたほうが安全というのが結論だった。
188 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:18:16 ] 参照にnullを代入したらその時点でGCが動くと信じてる奴は多そう 全く意味はないとMSDNには書いてあるが
189 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:19:20 ] dim a as new collection set a=nothing msgbox a.count
190 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:19:56 ] 全く意味は無いというのは言いすぎだな 超極めて限定的に意味があるシーンもある ……それは意味がないのと同義か
191 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:20:00 ] アウトプロセスサーバなCOMでプロセス起動するようなやつだと 解放しないとプロセスが残るやん メモリリークどころじゃないやん その時点でアウトやん
192 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:22:07 ] >>190 循環参照とかにつかうんよ >>191 参照カウントをデクリメントするのと、「解放」するのは全く別物
193 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:24:48 ] 循環参照でもそれらが孤立してたらGCされるだろ
194 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:27:18 ] >>193 .NETはね VBは参照カウントだから無理
195 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:39:01 ] 以下VB6の話。スレ違いなのでこれくらいにしておく。 「別の処理」のときにObjを確実に終わらせいたいときはNothingの代入は意味がある。 Sub XX Dim Obj As New ActiveX.Hoge ' いろいろな処理 Set Obj = Nothing ' ここで参照が0になったら即開放される。ここはVB.NETと異なる。 ' 別の処理 End Sub Objはローカルに宣言された変数だからEnd Sub時点でObjは消失してNothingの代入相当の処理 つまり参照カウンタの減算は行われる。このため「別の処理」が存在しないときにNothingの代入は意味がない。
196 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:39:55 ] COM使うの止めればいいじゃん。特にサーバでは。
197 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:41:26 ] >>196 サーバー用途だとエンタープライズサービスがもろCOM+だからねぇ
198 名前:デフォルトの名無しさん [2007/03/18(日) 23:17:22 ] しかし、これからはComは使わないだろ FW1.1とかでAPI使わずにVB6のMSCOMM使ってる連中が多かったから FW2.0でCOMM通信のコンポーネント追加したんだろう DataGrid使いづらいからってMSFLEXGRID使ってた連中もいたし それでDataGridView追加したんだろうけどなぁ… すべてはCOMから移行していくんだよ全て
199 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 23:28:50 ] とはいえ、マイクロソフトの主要プロダクトはほとんどCOMじゃないか。
200 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 23:34:01 ] >>198 FWってFrameworkのことか? 普通はFxと略すが
201 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 23:37:47 ] Fxは.NET Framework 3.0(旧称WinFX)のことだと誤解されそう
202 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 23:39:29 ] >>200 うはw初めて知った。 それって公式な略称なんですか?
203 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 23:39:53 ] マイクロソフトの出す資料には.NET Fxと書いてある。
204 名前:デフォルトの名無しさん [2007/03/18(日) 23:40:14 ] >>200 FXは俺も3.0とオモタw そういえばみんなフレームワークなんて呼んでるんだろうな? 俺は普通にフレームワーク2.0とかの書き方なんだが略し方とかあるのか? VisualStudio2005=VS2005みたいに
205 名前:デフォルトの名無しさん [2007/03/18(日) 23:41:16 ] Clipboard.SetDataObject(Me.PictureBox.Image, True) で、クリップボードにコピーしようとしたら、10回に8回くらいは、以下のエラーが出るんだけれど 何でかな? System.Runtime.InteropServices.ExternalException: 要求されたクリップボード操作が失敗しました。 at System.Windows.Forms.Clipboard.SetDataObject(Object data, Boolean copy)
206 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 23:46:05 ] >>205 他所のアプリがクリップボードをロックしてる時にでもエラーになってんじゃね?
207 名前:デフォルトの名無しさん [2007/03/18(日) 23:50:34 ] >206 サンキュウ。うーん、でもね、他のアプリは確かに沢山動いているけれど、 クリップボードをロックしているはずはないのだけれど。 例えば、このエラーが出たあとPaintを起動してクリップボード使っても 何も問題なく使える。うーん、おかしい。
208 名前:デフォルトの名無しさん [2007/03/18(日) 23:53:12 ] その前後のプログラムのソース見ないといまいちわからんかもしれんなぁ・・・ なにやってんだ? 俺はクリップボード問題なさそうなんだが
209 名前:デフォルトの名無しさん [2007/03/19(月) 00:05:22 ] プログラムはFormを3つ開いて、Form3のPictureBoxに絵を描いて Buttonを押したらその絵をクリップボードにコピーするという簡単なもの。 このサンプルをそのまま使っている。 ttp://www.bcap.co.jp/hanafusa/dotnet/zu02.htm#no4 プログラムの中には、スレッドを使って別の処理を並行してやらせるようなルーチンも あるのだけれどプログラム起動直後はそういうルーチンは全然実行していないので、 スレッドなどは関係ないと思う。
210 名前:デフォルトの名無しさん [2007/03/19(月) 00:15:10 ] >>209 COM関連だよなInterRop そうおもってググってみたら同じような質問があった でうまくいったみたいだけど参考になるかな?
211 名前:デフォルトの名無しさん [2007/03/19(月) 00:15:56 ] 貼り忘れ 連投スマソ piza.2ch.net/tech/kako/977/977112364.html //********************* 232 名前: 名無しさん♯ 投稿日: 2001/04/17(火) 17:21 >>230 COMのスレッドの問題よん。 ここを参考にしてちょ。 質問 discuss.develop.com/archives/wa.exe?A2=ind0011B&L=DOTNET&P=R26673 回答 from Microsoft discuss.develop.com/archives/wa.exe?A2=ind0011B&L=DOTNET&D=0&P=38177 233 名前: デフォルトの名無しさん 投稿日: 2001/04/18(水) 00:39 >>231-232 ありがとうです。 using System.Threading; して Thread.CurrentThread.ApartmentState = ApartmentState.STA; をMainの一番初めに入れればいいんですよね。 この方法で試してみたけど、うまくいったりいかなかったり…。 で、今試したら100%うまくいくようです。 ちょっと謎ですが、たぶん大丈夫でしょう。 どうもありがとうございました。
212 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 01:00:10 ] 普通はSTAThreadAttributeついてると思うんだけど、つけてないの?
213 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 01:01:36 ] >>207 そりゃ問題なく使えて当然。そんな長時間クリップボードをロックしっぱなしするようなことはフツーしない。
214 名前:デフォルトの名無しさん [2007/03/19(月) 02:05:54 ] >211 サンキュウ。 Thread.CurrentThread.ApartmentState = ApartmentState.STA っていうのを入れてみたが効果なし。 おかしい。
215 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 07:39:15 ] >>214 .NETのVersionはなに?.NETのVersionが2.0なら >Thread.CurrentThread.ApartmentState = ApartmentState.STA は既にレガシーで機能しない。 メインスレッドは属性[STAThread]で指定し、それ以外のスレッドならスレッド開始前に Thread.SetApartmentStateで初期化する必要がある。 それからPictureBoxはGUIコンポーネントだから、もしメインスレッド以外から PictureBox.Imageを参照してるならおかしくなるのは当たり前だけどそこは大丈夫?
216 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 08:08:45 ] マイクロソフトはレガシーって呼ぶのか…。obsoleteとか言ってくんないとわからんw
217 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 08:37:32 ] >>215 もうだめだ .Image が .Invoke に見えた(orz
218 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 08:44:50 ] それは目がピンヴォケですね
219 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 09:05:56 ] …
220 名前:デフォルトの名無しさん [2007/03/19(月) 10:06:46 ] Directoryクラスについて教えてください。 ヘルプに、 「Directory クラスの静的メソッドは、すべてのメソッドでセキュリティ チェックを実行します。 オブジェクトを何回か再利用する場合は、このようなセキュリティ チェックが必ずしも必要では なくなるため、これらの静的メソッドの代わりに DirectoryInfo の対応するインスタンス メソッドを 使用することを検討してください」 とありますがこのセキュリティチェックというのは、Windows固有の機能でのチェックでしょうか、 それともウイルス対策ソフトにチェックをしてもらうということでしょうか? このヘルプの意味するところは、「初回は必ずDirectoryクラスを使い、一度使ったフォルダは すぐ次ではDirectoryInfoクラスを使うようにする」ことで、ウイルスチェックなどがしっかり掛かる ということを意味しているのでしょうか?それともこれらのセキュリティチェックとは、いわゆる コードアクセスセキュリティのようなもののことでしょうか?すみませんがよろしくお願いします。
221 名前:デフォルトの名無しさん [2007/03/19(月) 10:09:02 ] また、逆に言うと、Directoryクラスを使わず、DirectoryInfoクラスだけを使ってしまうと セキュリティチェックが掛からず、ウイルスに汚染されてしまう危険がある、といったことをも 意味するのでしょうか?これもあわせてお願いします。
222 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 10:13:30 ] CASの事だよ。 ウィルスとか関係ない。 DirectoryInfoでもチェックは入るが、 例えばインスタンス作成時だけチェックすれば済むとか、 そういう話だよ。
223 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 10:24:35 ] >>217 とりあえずもちつけ 落ち着いて理論的に考えていけばきっと解決できる問題だ!!
224 名前:デフォルトの名無しさん [2007/03/19(月) 10:32:50 ] >>222 ありがとうございます。やはりコードアクセスセキュリティのことだったのですか、 >DirectoryInfoでもチェックは入るが、 >例えばインスタンス作成時だけチェックすれば済むとか ということは、ヘルプの言ってることは、原則として、 インスタンス作成時は Direvtoryクラスを使い、 それ以降そのインスタンスの使用は DirevtoryInfoクラスを使ってください と考えてよいということでしょうか?そしてみなさんもそういう原則を踏襲して 日々コードを作成しておられると考えてよいでしょうか?
225 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 10:44:13 ] >>224 どこをどう読めばそう曲解できるのか不思議だが、書いてあるとおりだよ。 CASにかかる時間が気になるほど回数呼ばないならどっちでもいいってことだ。
226 名前:デフォルトの名無しさん [2007/03/19(月) 11:07:57 ] >>225 たびたびすみませんです。 まだよく理解できていないのですが、DirectoryInfoでもDirectoryでも、 CASに関しては同等なのでしょうか、それともやはり顕著に異なるのでしょうか? もし同等なのであれば、どちらを使ってもよい、ということになりコード作成で 気にする必要がなくなってありがたいのですが、ヘルプではやはり異なるように 書かれてあるようにも感じられます。CASをやってくれるのがDirecotryだけであるなら、 1.たくさんの回数呼ばないのなら、すべて 「Direcotry」 で済ませてよい、 しかし 2.もし同じフォルダーをたくさん回数呼ぶようであれば、最初だけはDirectoryを 使って、あとは DirectoryInfo を使うようにするべきである、 ということでしょうか?そしてこの原則をはずしてすべてを DirectoryInfo だけで 記述してしまうと、.NETのプログラムとしては大きく欠陥となる、ということを意味する のでしょうか?この辺が気になっています。VB6ではこういうことを考える必要が なかったもので戸惑っています。
227 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 11:32:46 ] なんでそうなる
228 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 11:35:12 ] プログラミングがあまりに論理的なので忘れてしまうことが在る プログラミングはスポーツ、つまり活動的な行為なのですよ 人に聞くなんて恥ずかしい行為は慎むとよい
229 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 11:36:24 ] DirectoryInfoはチェックしないなんて どこに書いてあんだよ。 同じディレクトリに対して操作を繰り返すんだから、 最初のインスタンス作成時にチェックするだけで済むだろ。 だからコンストラクタとかその辺でチェックしてるってことだよ。
230 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 11:39:44 ] そろそろさじ投げてもいいほど俺たちは堪えてるよな?
231 名前:デフォルトの名無しさん [2007/03/19(月) 12:07:46 ] >>229 >DirectoryInfoはチェックしないなんてどこに書いてあんだよ。 >>220 で挙げたようなヘルプの説明はそういった意味かと思いました。 これは意味が異なるのでしょうか。いろいろお聞きしてすみません。 >同じディレクトリに対して操作を繰り返すんだから、 >最初のインスタンス作成時にチェックするだけで済むだろ。 >だからコンストラクタとかその辺でチェックしてるってことだよ。 ということは、コンストラクタを使う限りは、DirectoryでもDirectoryInfoでも CASが掛かるということでしょうか、そうであれば、初めから両者の差は、 コンストラクタ以外のメソッドでのみ異なるということになるわけなのでしょうか。 たびたびお聞きしてすみません。
232 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:19:11 ] reflector.netでも使えばいいんじゃないか?
233 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:32:20 ] 諦めた、もう無理w
234 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:37:29 ] どうやってDirectoryのコンストラクタを使うんだ。 どうやってコンストラクタを使わずにDirectoryInfoを使うんだ。 って言ったらコンストラクタ使わずに使えるよ、とか言われんだろな。 そういうことじゃないんだ、そういうことじゃ…
235 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:38:41 ] >>231 そのセキュリティチェック云々のたわ言は別にして DirectoryとDirectoryInfoの違いはわかってるのか?
236 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:43:29 ] >>231 ・・・なんという電波解釈wwww
237 名前:デフォルトの名無しさん [2007/03/19(月) 12:46:37 ] >>235 >DirectoryとDirectoryInfoの違いはわかってるのか? それもあいまいなのですした。すみませんです。 >そのセキュリティチェック云々のたわ言は別にして この件はそれほど気にしなくてもいいという感じでいいでしょうか?
238 名前:デフォルトの名無しさん [2007/03/19(月) 12:54:47 ] TextBoxに入力した内容を次にソフトを立ち上げた時に表示するように保存しておくようにしたいんですけど。 どうやるんですか? データファイルとかソフト本体以外のファイルは作らないでやりたいんです。
239 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:57:52 ] 1回のCASの検査にかかる時間はせいぜい1/1000秒かそれ以下。 1000回繰り返したら1秒遅くなることになるが、これが気になるならうまくやれってこと。
240 名前:デフォルトの名無しさん [2007/03/19(月) 13:01:52 ] >215 サンキュウ。 VS.NET2003です。 その後のテストで、以下の事実が判明しました。ここで教えてもらったスレッド関係の設定をしなくても、 別のDELLマシンでは、何の問題もなくpictureBoxクリップボードにコピーできる。 エラー発生するのは最初に開発していたマシンのみ。 エラー発生しても、プログラムの実行を継続してやれば、2回目以降は成功する。 というわけで、よく分からない状態です。たまたま解決したのか、また、別のマシンで発生する可能性があるのか考えるとちょっと怖い。 お客さんのマシンで発生したら最悪。。。
241 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 13:02:17 ] >>238 情報量増やさずに情報を増強するのは無理 普通は外部ファイルとして保存するかアプリケーション構成とかに保存するんだろうが、 嫌なら諦めろ
242 名前:デフォルトの名無しさん [2007/03/19(月) 13:04:20 ] >>238 念じるしかないんじゃないの? 増やさないで情報を保存するなんて、エスパーしかできねーし。
243 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 13:04:37 ] >>238 レジストリに格納できないか?
244 名前:デフォルトの名無しさん [2007/03/19(月) 13:14:38 ] >>239 >1回のCASの検査にかかる時間はせいぜい1/1000秒かそれ以下。 >1000回繰り返したら1秒遅くなることになる そうだったのですか。わかりました、ということは原則としてアクセス回数が 少ないものの場合は、Directoryですべてまかなう方がむしろよい、というふうに つまりCASを必ず通すという考えでやれば間違いはない、ということなのですね。 どうもありがとうございました。 あとは、DirectoryとDirectoryInfoの違いについてまた調べてみますです。 どうもでした。
245 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 14:16:26 ] おめでとうございます。 日常生活でのコミュニケーションに障害を感じるレベルです。
246 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 15:36:42 ] >>238 アプリ本体のアセンブリ自身を書き換えてやればいいんじゃないか?
247 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 15:40:19 ] >>243 それも外部ファイルいじってるやんw >>238 みたいなのはもう居なくなれよwwwww 常識的に考えてそんなことしねぇよwwwww
248 名前:デフォルトの名無しさん [2007/03/19(月) 15:41:53 ] まあ、彼がファイルとか作りたくないっていう理由が全くわからんけどね。 Assembly自身の書き換えは、厳格名を持ってる場合に問題出るだろうし、そもそも最近のセキュリティソフトが嫌うと思う。 EXEの書き換えなんて。 普通にapp.configに書き出せばいいのに。
249 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 15:52:26 ] >>247 少なくとも新規作成はしない罠
250 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 15:55:27 ] >>249 確かにw しかしまぁ、何故新規作成したくないというか・・・・ きっとダメな理由でもあるんだろうけどなぁ
251 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 15:59:14 ] それならSystem32あたりで適当なファイルをランダムに選んで乗っ取れ
252 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:04:16 ] ブートローダ乗っ取ればいいんじゃね?
253 名前:デフォルトの名無しさん [2007/03/19(月) 16:05:35 ] PCに残せないなら、前回の最終入力を作業者の脳内に残してもらえばいいじゃん。 それを画面起動時に入力してもらう。
254 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:08:58 ] ふっかつのじゅもんか。
255 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:11:21 ] 設定サーバを立ててオンラインで保存・読み込みすればいいんじゃね
256 名前:デフォルトの名無しさん [2007/03/19(月) 16:13:15 ] まあ、普通に馬鹿な仕様を変更すればいいだけだろ? ローカル保存可とするか、保存する場所ないならば前回入力なんぞ保持しないか。
257 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:38:26 ] VBでいうAsc関数はフレームワークではどの様に記述するのでしょうか? Microsoft.VisualBasic.Strings のメンバではなくてです。
258 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:38:54 ] system.math 名前空間の中じゃねぇの?
259 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:44:21 ] Reflectorで覗いてみたら? 自己責任で
260 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:44:27 ] >>257 普通にInt32にキャストしろ
261 名前:257 mailto:sage [2007/03/19(月) 17:18:27 ] たくさんの回答ありがとうございます。 >>258 名前からして違うと思います。一応確認しました。 >>259 リコンパイラ以前使ったのですが、どこに入れたのか忘れちゃいました。 Platform SDK か何かをインスコしたパスの中に実行体があるんでしたっけ? >>260 キャストですか?
262 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 17:28:34 ] Dim row as DataRow row("ID") = 3 みたいに、括弧をつけてアクセス出来るようにするには、 クラス定義の時、どのようなメソッドを追加すれば良いのでしょうか。
263 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 17:34:18 ] 引数設定すればいいんじゃね? Public Property Row(ByVal ColName As String) As DataRow Get return HOGEHOGE End Get Set(ByVal value As DataRow) _HOGEHOGE= Value End Set End Property
264 名前:デフォルトの名無しさん [2007/03/19(月) 17:34:47 ] とりあえずHashMapとかディクショナリとか。 .netになって意識してないけど、デフォルトプロパティもあるんだっけ? 上記の場合、Row.Item("ID")な書き方が正なように思う。 で、ItemってのがHashMapなりディクショナリで実装。 DataRowのデフォルトプロパティがItemだから、row("ID")でもアクセスできる。 かな?
265 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 17:46:36 ] >>264 あ、そっち方面の話だったのねwww
266 名前:デフォルトの名無しさん [2007/03/19(月) 18:22:31 ] >>263-265 どうも丁寧にありがとうございました。
267 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 18:38:05 ] ちょっと質問です VB.NET 2005のWinアプリでXSDスキーマ(スキーマA)使ってデータを読み込んだりしようとしている。 このスキーマAはプロジェクトAのSchemaフォルダに配置されていて実行時にこれを読み込みたい (ただし、直でファイルパスを切りたくないので相対パスでアクセスしたい) 開発環境では、プロジェクトAのBinフォルダ以下のReleaseやDebugフォルダの中に保存されてしまい、 インストーラからインストールした時は、実行ファイルと同じ階層にSchemaフォルダがあるため、相対パスではアクセスできないので 相対パスで開発環境でも、実行環境でも同じ相対パスでアクセスしたい。 インストール時のフォルダ構造を開発環境に合わせればいいじゃないかといわれればそうだけど、 もし特に設定ナシで目的が達成できるならと思い質問させてもらいました。 説明が下手で伝わりにくいかもしれませんが、よろしくお願いします。
268 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 19:09:56 ] exeファイルにNTFSストリームをくっ付ければ hoge.exe:hoge.txt とかに保存すれば
269 名前:268 mailto:sage [2007/03/19(月) 19:11:17 ] >>238 です
270 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 22:04:50 ] >>267 Schema フォルダのパスを設定ファイルに書いとけばいいんじゃね?
271 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 22:08:41 ] >>257 これでわかるかい? Dim s As String = "abcABC" For Each c As Char In s Dim a As Integer = Convert.ToInt32(c) Console.WriteLine("{0}: {1}", c, a) Next
272 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 22:34:45 ] Ascをreflectorで見た 何気に気合入ってたよ Unicode<->ASCII(MS-shiftjis?)
273 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 22:39:15 ] Microsoft.VisualBasic.Asc() じゃダメ?
274 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 23:16:11 ] >>271 それはAscW
275 名前:デフォルトの名無しさん [2007/03/19(月) 23:34:22 ] >>270 やっぱそうなっちゃいますよね? あんまり、パスの直書きはしたくなかったんで聞いてみたんですが とりあえずいい案思いつくまでそれでしのごうかと思います (というか、そのままになりそうな予感) レスサンクスでした
276 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:03:30 ] 質問。StreamReader.Read(Char(), Int32, Int32) で文字列を読み込んだら、空白部分がnothing扱い(!?)になるんだが、 空かどうかはどう判定すればいいの?C#では普通にナル文字が入ったんだけどなぁ・・・。
277 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:11:46 ] VB の Nothing は C# では default(T)。 default(Char) は '\0' だな。 で、空白とか空とかって何?
278 名前:デフォルトの名無しさん [2007/03/20(火) 00:20:32 ] この質問はVBの質問とはちょっと違いますが、 Windowsの仕組みを良く知っている人が多そうなここで質問させていただきます。 間違っていたらごめんなさい。 質問は、 Cでコンパイル済のEXEファイルAがあって、それはある種のシミュレーションを 繰り返し計算して、計算結果の数値を画面にずらずらと出力しています。 i=1 数字1 数字2 数字3 i=2 数字1 数字2 数字3 i=3 数字1 数字2 数字3 ... ... こんな感じです。そのソースを入手できないのですが、何らかの方法でこの出力している数字を リアルタイムで取得して、それを別プロセスで動いているVBで作ったグラフ描画ソフトBに データとして送りたいのです(ファイルマッピングか何かの方法で)。 問題は、画面の数字を取り込む方法なのですが、何か良い方法はありますか?
279 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:26:53 ] タイマで WM_GETTEXT 投げてりゃ良いんじゃね
280 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:27:19 ] ProcessStartInfo.RedirectStandardOutput プロパティがそれっぽい ProcessStartInfoはProcess.Startの引数として使う やったことないから合ってるかは知らんが
281 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:32:33 ] > 画面にずらずら もうプログラムとか横においてだな、 詳しく書かないといけないところを省略するなよ OCRが最も汎用的だな
282 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:38:37 ] ちょwwwOCRてwwwww まずデジカメが必要だから買ってきて
283 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:45:04 ] フォント固定で種類が数値+α程度なら、パターンマッチも そんなに難しくはないだろうね、
284 名前:デフォルトの名無しさん [2007/03/20(火) 00:59:23 ] >280 ありがとうございました。教えてもらった方法で、 意外にも簡単にできました。でも一つ問題がありまして、 出力をリダイレクトしたら、画面の表示が出なくなりますが、 希望としては、画面にも今までどおり出しながら、同時にリダイレクトして 取り込みたいのですが、それは無理でしょうか?
285 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 01:00:52 ] 受け取った出力をそのまま標準出力に流せばいいじゃない
286 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 01:09:57 ] そのためのtee
287 名前:デフォルトの名無しさん [2007/03/20(火) 01:14:27 ] >285 VBからシミュレーションソフトを起動していますが、そのConsoleに AttachConsoleする方法が分かりません。 >286 TeeってDOSにありますか?探してみたのですが無いようでした。 もっと簡単に、リダイレクトしながらconsoleにもそのまま出力する というプロパティ設定があるといいのですが。。
288 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 07:18:16 ] 無いならダウンロードするか作れよ。
289 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 09:41:48 ] 自分でコンソール作ればいいじゃないか
290 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 10:32:04 ] あるテーブル2つのデータを持つDataSetがあります TableA TableB がデータセットに格納されており、2つのテーブルは TablA:TableB=1:Nの関係でリレーションが張られています。 TableA/TableB共にデータを追加・更新・削除した後にDBに繁栄させるためにUPDATEメソッドを実行したいのです。 ここで普通データアダプタで更新する場合 Tableという名前のDataTableがUpDateメソッドで反映される為 TableAの名前をTableに書き換えてデータアダプタでUpDateしています。 その後TableAの名前を元に戻し、 TableBの名前をに書き換えてデータアダプタでUpDateしています。 2回データアダプタを作成し、更新していますが、 同一コネクション内でトランザクションをかけている為、同時実行時などは問題なく処理できています。 しかし、この処理が非常にスマートでない気がします。 なにかもっと簡単にリレーションの張られたデータを更新する手法があるのではないかと情報を集めてみたのですが、うまい解決方法が見つかりません。 もし、なにかスマートな解決方法や考え方があるよ?とか、俺はこうしている などの情報を少し分けてもらえないでしょうか? よろしくお願いします。
291 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 10:35:25 ] アダプタで出来るのは単純な更新のみと割り切って、SQLでごいごいと書く。
292 名前:デフォルトの名無しさん [2007/03/20(火) 10:36:29 ] >289 VBアプリから他のコンソール画面に文字出せるのか?
293 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 10:46:59 ] >>292 それは普通にムリつうか・・ 実現できても手法が難しいんじゃね?
294 名前:デフォルトの名無しさん [2007/03/20(火) 15:04:17 ] Relationネタに便乗 親と子の関係が 1:NならリレーションOK 0:N のデータが存在する場合エラーになるよね? やっぱSQLで抽出して 1:N(0件含む)の関係にしてからじゃないとDataSetにリレーション設定できないの?
295 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 15:23:29 ] >>294 親なし 子ありってのはできないんじゃね? 外部キー設定の云々があるから防御掛けられてるような希ガス
296 名前:デフォルトの名無しさん [2007/03/20(火) 18:05:29 ] VB2005のExpress Editionを使いたいのですが XPのSP2にしないとインストールできないみたいです。 ですがupdateができなくて困っています。 SP1で使えるようにはできないのでしょうか?
297 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 18:21:51 ] >>296 ネット繋いでてSP2にUpDateしてないとか 今時どんな会社だよwwwww まぁ、認証できないとか、管理者権限がないとか色々あるだろうが・・・ 割ってんなら素直に2000でやっとけw 恐らくAPIのバージョン情報から取得できる部分で比較しているはずだから(その他のファイル場ジョンも見ているだろけど) その辺の深い部分いじればいけるかもしれないけどまず無理だと思ったほうがいいんじゃないか? むしろこの環境でしか動かないって言ってるんだからその環境に合わせるべきだと思う。 じゃないと、無理に入れれたとしても動かない可能性もあるし
298 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 19:17:21 ] どうなんだろ。 SP2であることがインストールの絶対条件なのであれば打つ手なしだけど、 Web関連やIIS関連で引っかかってるなら何とかなりそうな気がしないでも ない予感を若干感じるような気がする。
299 名前:デフォルトの名無しさん [2007/03/20(火) 22:19:18 ] ttp://www.microsoft.com/japan/msdn/vstudio/support/readme/ ここに明確に書いてあるな ”Visual Studio 2005 は、次のいずれかのシステムにインストールできます。”と XPはSP2しかダメみたいね
300 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 23:41:24 ] 2005でも2003と同じようにエディタの上部のドロップダウンリスト使って オーバーライドのスケルトンを挿入できるようにする設定ってある? しかし、どうしてこの機能カットされたんだろう。 余計なことすんなヴォケ、と言いたいよまったく。
301 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 03:08:16 ] クラスウィザードが削除された時の衝撃よりマシだろ、慣れろ つか、C#やVB.NETならドロップダウンでスケルトン挿入できるが 2003で、MFCやATL系のプロジェクトでスケルトン挿入なんかできたっけ
302 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 10:18:40 ] こめん俺はクラスウィザートは無用の長物だと思ってたw やっぱり削除されたのかな>オーバーロードのスケルトンの自動挿入 あの機能を発展させて、シャドウとかイベントハンドラ(もちろんWithEvents使わない 場合の話だけど)の自動挿入とかも欲しかったんだけどな。
303 名前:デフォルトの名無しさん [2007/03/21(水) 10:20:56 ] Override って入力してスペース入れたら入力ほじょ。 関数選択すれば、ベースよぶ雛形出る。
304 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 10:26:44 ] 俺はovまで入れてCtrl+Space押しちゃう
305 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 11:01:00 ] >>303 そのポップアップは"Overrides"って入力すると嫌でも出て来るんで知ってるんだけど、 やっぱりドロップダウンで挿入も残しておいて欲しかったな。 "Overrides"って打つ手間も惜しむならPG辞めろって言われればその通りだけどさ。 あと、これは2003もそうだけど、自動インデントの機能もなんか痒い所に手が届かない仕様だよね。 余計なことする鬱陶しいオプションと、あまりにも気が利かない馬鹿なオプションしかない。 結局インデントの設定は「なし」で使ってるんだけど、これだと全行いちいち行頭から自分で 字下げしなきゃならん。
306 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 11:56:59 ] まあお前の趣味には興味ないしな
307 名前:デフォルトの名無しさん [2007/03/21(水) 12:42:30 ] >>305 ( ゚д゚)ポカーン
308 名前:デフォルトの名無しさん [2007/03/21(水) 12:44:09 ] 俺の予想ではMSは、ある程度は、わざとVBを使いにくくしていると思う。 出来の悪いやつほどかわいいもんだろ。そういう心理を突いているんだな。 Windowsがヘボイのもそういう理由だと思う。
309 名前:デフォルトの名無しさん [2007/03/21(水) 12:44:56 ] >>308 対人はそうだろうが ツールに関してはねぇよwwww
310 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 12:55:52 ] 他の開発環境と競合しない部分は手抜いてるよな
311 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 13:35:49 ] 2005はキー入力だけでポンポンコードが生成されるのが気持ちよくて好きだ
312 名前:デフォルトの名無しさん [2007/03/21(水) 16:20:50 ] すみません、教えてください、ユーザーコントロール作成してフォームに貼り付けたとき、 1秒ぐらいWaitのマウスカーソルになってから何も貼り込まれないということってあるでしょうか。 その際、エラーの表示は出ず、メッセージも何も言ってきません。 ユーザーコントロールはユーザーコントロールを2つほど使って構成されているのですが、 他のものでは同様の使い方でも貼り込まれていました。
313 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 16:31:23 ] そのコントロールのコンストラクタとかで何かやってない? フォームもユーザコントロールも、フォームデザイナで表示した場合、インスタンス化されるよ。 ためしにメッセージボックス表示を仕込んでみ、表示されるから。
314 名前:デフォルトの名無しさん [2007/03/21(水) 16:43:43 ] >>313 そのユーザーコントロールのNew()を、 'コンストラクタ Public Sub New() Debug.Print("初期化!!") MessageBox.Show("初期化!!") ' この呼び出しは、Windows フォーム デザイナで必要です。 InitializeComponent() Debug.Print("初期化!!") MessageBox.Show("初期化!!") End Sub こうしてみたのですが、イミディエイトにもエラーにも表示されず、またメッセージ も出てきませんでした、てことは初期化もされないうちに蹴られたのでしょうか・・・
315 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 16:57:41 ] てきとーいったかも・・・フォームだけかな? ごめん。競艇みながらだから簡便。
316 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 18:11:04 ] >>312 ■ 意味不明な「俺様用語」を使わないこと。(ex. 貼り込む ―― 刑事かw) ■ 読み手にエスパー的な「深読み能力」を期待しないこと。(具体的にどんな処理を行っているかも、 問題が再現可能なコードも示さず「オカシイ」とか騒いでも誰にも君の問題は伝わらない) ただ、2002は知らないが2003でも2005でも複合コントロールや継承コントロールの動作がコーディング中に 挙動不審になる場合は確かに存在する。 そういう時、一度IDEを終了してから再度ソルーションを開いてリビルドすると 問題が解消される場合が多い。
317 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 18:43:44 ] >>297 >今時どんな会社だよwwwww 開発機に SP2 などという危険なモノを入れるな、とか。 …ヒトゴトじゃなく、俺もいい加減 SP2 入れんとな。 すべて再インストール覚悟で。 >>298 インストーラで蹴られる。
318 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 18:48:36 ] サポート切れのOS(XP SP1)の方がよっぽど危険だと思うが。 いつまでも使ってるなよ。
319 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 19:18:41 ] そんなことよりネスケ4を全社で使い続けるうちの顧客を何とかしてください。 ASP.NETでVBブイブイいわせるのにこいつが足かせになってメンドくさい。
320 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 20:20:20 ] >>319 うちの顧客はIE7を入れたがってる。動作検証とらなきゃ…。 新しいのも古いのも面倒ですな。 ASP.NET繋がりで。VS2005のVB.NETでWebサイト開発してるんですが、 開発中やたら重いというか、メモリとCPU食いまくって泣きそうです。 画面12コ+帳票(ActiveReports)8枚が一つのプロジェクトになっているんですが、 まず開いて編集できるようにまで固まって5〜10分待ちぼうけ。 ちょっとソース弄ろうと思えば固まって2〜3分待ちぼうけ。 下手をするとそのまま固まりますorz 実行時は別に重くないです。 開発マシンはceleron 2.4GHz、メモリ768MB、HDD 60GBなんで 特に貧弱ってわけでもないと思うんですが、 タスクマネージャで見ると仮想メモリ含めて1.3GBとか行ってる(つД`) 同じような経験してる人いませんか?
321 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 20:43:15 ] CPUはいいけどメインメモリは2Gにしとけ、ディスプレイとメモリは大きければ大きいほどいい
322 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 20:43:50 ] VS2005様からみたら十分貧弱だと思うよその環境。。 まずセレロンってのがありえないし。
323 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 20:48:46 ] CPUよりメモリーが非常に効くよ。 普通にXP上でVS2005を立ち上げただけで大体500MBもってかれる。 そこにプロジェクト作成してデバックしたら700MB さらに、ソリューション構成でクライアントUIとサーバWebサービスなど構成すると1G超える。 でもって、DBをSQL鯖EXなどで自分端末だと・・・。 まあ、1.5GBとかメモリーがあればとりあえずは。w
324 名前:320 mailto:sage [2007/03/21(水) 20:57:35 ] >>321-323 レスdです。 メモリ足らんのですか…2GBってどこの絵描きのマシンだろうorz 過去に外注さんに常駐してもらって、顧客納品用のマシン(メモリ256MB)で 開発お願いしたこともありました。 Webサービス使用のWindowsアプリでしたけど。よく血管切れなかったなぁw 上司に相談してみます。ありがとうございました!
325 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 21:04:22 ] どこの絵描き、って・・・いまどき1GB1万くらいだろうに。 スワッピングしてぼーっと待っている時間に時給相当をかけてみろ。
326 名前:デフォルトの名無しさん [2007/03/21(水) 21:58:35 ] >>320 一応一言 P4 2.4G Mem 512M XP SP2 でそれより大きなソリューション開いても全然問題ないぞ ちなみに300Mほど起動した状態で食ってるな 確かにスワップはするけどまぁ動きはするな
327 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 22:19:41 ] ファイルサイズの問題じゃないと思うよ。 たぶん帳票とかがメモリ馬鹿みたいに喰うんじゃないの? あとWindows Formでもコントロールをちょっと多目に使ってる奴をデザイナで 開くと馬鹿みたいに重い。 まあごく普通のWin Formのアプリを作成するだけなら512Mで実際十分だと俺も思うけどね。
328 名前:デフォルトの名無しさん [2007/03/22(木) 09:25:39 ] >>294 亀だけど、外部キーのプロパティにそのあたりの設定あるよ。 親子の厳密なチェックありも出来るし、単なる親子で参照もつよー程度も出来るし。
329 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 11:23:16 ] >>287 tee.exeやgrep.exeはSFUに入ってる。 ServiceForUnix。タダだからググってインストールすればいい。
330 名前:デフォルトの名無しさん [2007/03/22(木) 11:30:24 ] VB2005.NETをはじめたばかりの初心者ですので、レベルの低い問いを勘弁してください。 Form1に貼ったlabel1に現在時刻を表示するプログラムですが、8時から17時の間だけlabel1のbackcolorをLightGreenにしたいのです。 どのようにしたらよいのでしょうか? Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Label1.Text = DateTime.Now.ToString End Sub End Class
331 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 11:38:18 ] >>330 こんな感じでええんちゃうのん? 動かしてないけどなんとなく感覚はわかってもらえるんじゃないかと Dim NowHour As Integer = Date.Now.Hour If NowHour >= 8 AndAlso NowHour <= 17 Then If label1.backcolor <> Color.LightGreen Then label1.backcolor = Color.LightGreen End If Else If label1.backcolor <> Color.Transparent Then label1.backcolor = Color.Transparent End If End If
332 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 11:40:53 ] NowHour < 17 じゃね?
333 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 11:43:15 ] >>332 あ〜 そうだねw 多分会社の定時なんだろうけど これじゃ17時台も色変わるなwww
334 名前:デフォルトの名無しさん [2007/03/22(木) 12:19:36 ] >>330-333 ありがとうございます。 早速使わせてもらいます。
335 名前:デフォルトの名無しさん [2007/03/22(木) 18:58:02 ] 初心者質問ですみませんが・・・ VB2005でWindowsアプリケーションで開発しています。 現在DataSetを使い、SQLServerに非接続のデータアクセスをしています。 (テキストファイルを読み込んで接続しています。 StreamReaderを用いていますのでConnectionオブジェクトは使っておりません。) DataSetの内容をDataGridViewに表示しており、その内容を「印刷」したいのですが。 手持ちにあるTipsにはPrintDocumentクラスを利用して 'テーブルの内容を出力 Dim dr As OrderDataSet.GoodsRow For Each dr In OrderDataSet.Goods.Rows '1レコードを出力 e.Graphics.DrawString( _ dr.GoodsID.ToString.PadRight(10) & _ dr.GoodsName.ToString.PadRight(20, " ") & _ dr.Price.ToString.PadLeft(5), _ f, Brushes.Black, _ x, y + (cnt * pitch)) '印刷位置を更新 cnt = cnt + 1 Next というコードになるのですが、これだとデータソースを追加しなければなりません。 データソースを追加せず、DataGridViewの内容を「印刷」したいのですがどうしたらよいのでしょうか?
336 名前:デフォルトの名無しさん [2007/03/22(木) 21:50:13 ] >>335 OrderDataSet.GoodsRowyとかって型指定されたDataSetのことかな? DataSetの内容をDataGridViewに表示しており とあるので、型指定されている部分を部分を修正して Dim dr As DataRow For Each dr In DataSet.Tables(#).rows '1レコードを出力 e.Graphics.DrawString( _ dr("カラム名").ToString.PadRight(10) & _ dr("カラム名2").ToString.PadRight(20, " ") & _ dr(""カラム名3).ToString.PadLeft(5), _ f, Brushes.Black, _ x, y + (cnt * pitch)) '印刷位置を更新 cnt = cnt + 1 Next
337 名前:デフォルトの名無しさん [2007/03/22(木) 21:52:28 ] >>336 間違ってキー押して投稿してしまった… コードの部分のみ記載しますw Dim dr As DataRow For Each dr In DataSet.Tables(#).rows '1レコードを出力 e.Graphics.DrawString( _ dr("カラム名").ToString.PadRight(10) & _ dr("カラム名2").ToString.PadRight(20, " ") & _ dr("カラム名3").ToString.PadLeft(5), _ f, Brushes.Black, _ x, y + (cnt * pitch)) '印刷位置を更新 cnt = cnt + 1 Next こんな感じで型指定されていないデータセットを扱うようにしてやればよくない? 動かしてないんで、正しいかどうかは不明だけどw つうか、型指定されているものもただのDataSetを専用のクラスでラップしてるだけだし
338 名前:デフォルトの名無しさん [2007/03/22(木) 23:10:30 ] VBでOpenGLやる方法を教えてくれ。
339 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 23:16:53 ] 知ってるが お前の態度が 気に入らない
340 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 23:56:44 ] >>338 www.taoframework.com/Home
341 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 11:54:01 ] Vs2005でデザイナでフォームコントロールをはっつけてフォームのフォントサイズ変更すると フォームに貼り付けたコントロールの位置とサイズ、パディングなどが変更されるんだけど これと同じような事を実装したい まぁ、全てのコントロール回して直接変更していけばいいんだけど、このデザイナが変更している計算ロジック使えないだろうか? もし、使えるんであればフォントサイズに伴うコントロール位置やサイズの変更がラクだしいいかなっと思ったんだけど・・・・ 誰か知らない??
342 名前:デフォルトの名無しさん [2007/03/23(金) 12:58:15 ] >>341 まず試しにフォーム新しく作ってプロパティ変えずにコントロール貼り付けて 実行時にフォームのフォントサイズ変えてみ? それでサイズは変更すっから
343 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 13:01:59 ] VB2005でContextMenuStripのデザインを9X系のデザインに変えたいのですが (メニュー左側に青線の背景がないもの) プロパティーにはないっぽい? Component を継承してDesignModeを変えればよいのでしょうか。 宜しくお願いします。
344 名前:デフォルトの名無しさん [2007/03/24(土) 13:08:10 ] >>343 とりあえずそれやってみた?? それでだめなら解決策を考えようか
345 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 15:27:49 ] >>343 msdn2.microsoft.com/ja-jp/library/dy4ys6z6 (VS.80).aspx msdn2.microsoft.com/ja-jp/library/ms171698 (vs.80).aspx このへんかな
346 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 18:06:15 ] ユーザコントロール継承してDesignModeをFalse返すようにしましたが 何も変わりませんでした('ω`;) >>345 ありがとうございます! これから観てみますー
347 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 20:48:53 ] VB2005 Express Editionですが、 新しいデータソースの追加→データベース→ データソースに「Microsoft Access データベース ファイル」を選択すると、 接続の追加ダイアログで、ConnectionStringを入力する様になるのですが、 「Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\test.mdb;」など試しましたが、 何を入力しても、「初期化文字列の形式が使用に適合しません。index 0 で始まっています。」 とエラーがでてなにもできません。 ConnectionStringには何を入れたらよいのでしょうか?
348 名前:デフォルトの名無しさん [2007/03/24(土) 21:43:21 ] >>347 あいよ つwww.connectionstrings.com/ つうかURLわかりやす杉ww
349 名前:347 mailto:sage [2007/03/24(土) 22:30:32 ] ありがとうございます。 ですが、ConnectionStringの書き方はそのサイトを見ても合っているようです。 というか、何も入力しなくても、適当な文字を入力しても、何を入れようが 「初期化文字列の形式が使用に適合しません。index 0 で始まっています。」 となるので、ConnectionString欄に入れる文字がどうこうという以前の問題の 様に思えてきました・・・
350 名前:デフォルトの名無しさん [2007/03/24(土) 22:40:53 ] ちょっとパスワードとかユーザー名とかあるならその部分*とかにして全部さらしてみれば?
351 名前:347 mailto:sage [2007/03/24(土) 23:00:34 ] ID・パスワードは設定してないので Provider=Microsoft.Jet.OLEDB.4.0;Data Source=f:\mydoc\test.mdb; と Provider=Microsoft.Jet.OLEDB.4.0;Data Source=f:\mydoc\test.mdb;User Id=;Password=; は両方試しましたがだめでした。 ちなみにソース上で、 Dim cn As New OleDb.OleDbConnection() cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=f:\mydoc\test.mdb;" cn.Open() というコードで接続は出来ています。 データベースエクスプローラを使いたいと思い、データソースの追加の操作上で 前述のエラーでつまづいています。
352 名前:デフォルトの名無しさん [2007/03/24(土) 23:18:00 ] >>351 確認してみたけど問題ないね。 パスが違うくらいだけどそれも問題なさそう ところで、新しい接続もっかい作ってみて? 構成ウィザードでたら ・データベースを選択して次へ ・新しい接続ボタンをクリック ・接続の追加画面で データソースがMicrosoft Access データベース ファイル (OLE DB) その下の参照ボタンで目的のMDBを選択 そしたらその下のユーザ名やパスワードは空白にして 接続の確認ボタンをおしてみる これでどうなるかな?
353 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 23:34:31 ] なにやら画面自体が異なる様です。 ・データベースを選択して次へ ・新しい接続ボタンをクリック ・接続の追加画面で データソースが「Microsoft SQL Server データベース ファイル (SqlClient)」 となっているので、「変更」ボタンを押すと、 ・データソースの変更ダイアログ で「Microsoft Access データベース ファイル」を選択、 データプロバイダ「.NET Framework OLE DB 用データプロバイダ」で「OK」を押すと 下記のような接続の追加画面のダイアログがでます。 ---------------------------------------------------------- データソース: Microsoft Access データベース ファイル(OLE DB) 「変更」ボタン +その他 ConnectionString [入力欄] 「接続の確認」 「OK」「キャンセル」 ---------------------------------------------------------- mdbファイルを指定するような画面自体になりません。
354 名前:デフォルトの名無しさん [2007/03/24(土) 23:37:28 ] Expressとはこの画面すら違うのか まぁ、どっちにしろ 色々選択したあとにその接続の確認押せば、とりあえずオープンクローズできるかチェックできるはずなんだけど・・・
355 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 23:45:50 ] 接続の確認ボタンは、何を入力しようが、「テスト接続に成功しました。」となります。 「OK」ボタンを押すと前述のエラーが出て進めません。 もう少し色々試してみようと思います。ありがとうございました
356 名前:デフォルトの名無しさん [2007/03/24(土) 23:48:00 ] >>355 ConnectionString [入力欄] にあるコネクションストリング・・・とりあえずつかってみ?
357 名前:デフォルトの名無しさん [2007/03/25(日) 00:18:39 ] VB2005が重いです・・・起動してるだけでメモリ50MBくってます 軽くする方法はないでしょうか?
358 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 00:37:39 ] メモリを増設する。
359 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 00:41:58 ] HDDを高速なものと交換する
360 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 00:51:48 ] 寝る
361 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 01:21:10 ] ふだんは軽いメモ帳などを使ってコンパイルだけVB使えばいいんじゃね?
362 名前:デフォルトの名無しさん [2007/03/25(日) 03:09:28 ] CPU メモリ HDDは出来るだけ高速で大きな容量を できればCPUjはデュアルで メモリはXPでも512+256か1Gはほしい 起動して作業してるだけで512なんてあっという間だ
363 名前:デフォルトの名無しさん [2007/03/25(日) 06:24:03 ] 外山の政見放送を見たら、ドクター中松が普通に見えた。
364 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 20:11:22 ] VB2005でASP.NETのプログラムを書いています セッションIDを取得してサーバに保存、画面遷移のたびに読み取ったセッションIDとサーバに保存した セッションIDを比較、あっていたら処理を続けて、あわなかったらエラーページに飛ばす ログアウトしたらセッション破棄 と、言うことをやりたいです が、 ttp://msdn2.microsoft.com/ja-jp/library/87069683(VS.80).aspx を読んでみても解説がよくわかりません もっとわかりやすいところってありますか?
365 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 20:22:02 ] セッションIDってものを勉強するのが先じゃないの? 読み取ったセッションIDとサーバのセッションIDを比較? 何をしたいの?根本的に間違っていると思うけど。
366 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 21:10:01 ] >>365 そうやって管理してる物だと思ってました どの辺が根本的に違うのですか?
367 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 22:07:48 ] なんでログインの管理にセッションを使いたがるかな。
368 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 23:03:43 ] ログインの管理ではなく、ログイン画面を通さず直接URLを叩いたいてもアクセスできないようにするための機能と思っていますが
369 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 23:08:23 ] cgiで自分でセッションの管理をするならそうだが、 セッションの管理はASP.NETがやってくれるから、 Sessionオブジェクトにログイン済みかどうかのフラグを持てば十分。
370 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 23:30:13 ] >ログインの管理ではなく、ログイン画面を通さず直接URLを叩いたいてもアクセスできないようにするための機能と思っていますが お前誰だ。>>364 なのか? だったら思っていますがってお前が作る機能の目的なんて知らねーよ だいたい遷移のたびにセッションID保存したって、同じセッションならずっと変わらないんだから 単なるログイン管理と変わらんだろ。 単なるログイン管理ならフォーム認証でも使っとけばいいだろ。
371 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 23:51:07 ] なんでそんなに偉そうにしたがるのか
372 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 23:54:56 ] なんでお前ら日本語使ってるのか に等しい質問だな
373 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 00:06:36 ] いちゃもんつけたいだけのやつよりありがたいだろw
374 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 00:06:47 ] ここ、IDがでないのですね >>364 、>>366 、>>368 は自分です >>369 ありがとうございます もうちょっと調べてみます >>370 には質問の意味が伝わっていないですね
375 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 00:31:26 ] >セッションIDを取得してサーバに保存、画面遷移のたびに読み取ったセッションIDとサーバに保存した >セッションIDを比較、あっていたら処理を続けて、あわなかったらエラーページに飛ばす >ログアウトしたらセッション破棄 これで何をしたいのかちゃんと書いてみろよボケ。
376 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 00:33:32 ] ログインしてないのに画面を表示してしまわないようにしたいの? だったら単にASP.NETの認証機能使えばいい(まあフォーム認証かな)。 セッションなんて関係ない。 どうしてもセッションでやりたいなら>>369 みたいにすりゃいい。 セッションIDを比較しての意図がいまだに分からない。
377 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 00:36:09 ] どうしてもセッション同じか(同一セッションか、という条件だけ)で判断したいなら、 IsNewSessionででも確認すればいい。 セッションIDをサーバに保存する、ということをする必要などない。 てかセッションの仕組みで勝手にそういう処理は内部的に行われてる。
378 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 00:37:21 ] ただしIsNewSessionでの判断はきちんとやらないと無意味になりかねないのでやめた方がいい。
379 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 00:39:32 ] セッションでのログイン管理もあまりおすすめではない。 ちゃんと用意されてる認証の仕組みの方を使う方がいい。
380 名前:デフォルトの名無しさん [2007/03/26(月) 05:26:27 ] VB6.0からきました。初心者です。 WebBrowser1.Document.getElementsByName("Submit3")(0).Click() これを実行すると、 getElementsByNameは'Sistem.Windows.Forms.HTMLDocument'のメンバではありません。 とエラーになるのですが、なぜでしょうか?例文を貼り付けただけなのですが
381 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 05:56:46 ] なぜだと思いますか?
382 名前:デフォルトの名無しさん [2007/03/26(月) 06:11:20 ] 'Sistem.Windows.Forms.HTMLDocument'がgetElementsByNameのメンバではないからだと思います。 どうすればいいですか?
383 名前:デフォルトの名無しさん [2007/03/26(月) 06:12:30 ] 逆でした・・・
384 名前:デフォルトの名無しさん [2007/03/26(月) 06:15:11 ] なにか宣言しなきゃいけないような気もするのですが、さっぱり見当がつきません
385 名前:デフォルトの名無しさん [2007/03/26(月) 06:22:19 ] WebBrowser1.Document.HtmlElement.getElementsByName("Submit3")(0).Click() こうしたらエラーが直りましが、今度はHtmlElementが'Sistem.Windows.Forms.HTMLDocument'のメンバでないとなってしまいました 助けてください!
386 名前:デフォルトの名無しさん [2007/03/26(月) 07:51:06 ] 釣りですか?
387 名前:364 mailto:sage [2007/03/26(月) 08:09:40 ] >>376-379 ありがとうございます ASPのフォーム認証なども調べてみます
388 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 08:51:57 ] >>379 それは何か理由があるの?
389 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 09:28:54 ] いろいろあるが、とりあえず専用の機能があるんだからそれ使えでどうかな?
390 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 09:43:03 ] それは「おすすめしない理由」にはならないよね
391 名前:デフォルトの名無しさん [2007/03/26(月) 09:54:30 ] VB.Net 2003 を使用して、共有フォルダを作成/設定するには どのようにすればいいのでしょうか? やりたいことは、一つフォルダを作成してそのフォルダは ネットワークに繋がっている他のコンピュータから 参照が可能な設定にしたいのです。 FileAttributesなるものを見つけたのですが、これはちょっと 違うみたいでした。
392 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 10:01:19 ] OSコマンドだと NET 系があるからそれを使うとか。 言語でのサポートは無いと思う、セキュリティそのものだから。 WINAPIでやるにしても、セキュリティとってからの流れでしょ。
393 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 10:39:49 ] VB.NET2005 を使用しWinアプリを作成しています。 現在一定の秒数でBackGroundWorkerを使用してデータを取得しています。 その取得したデータをFormにあるDataGridViewに反映させたいのですが 繁栄中にそのDataGridViewに操作を行う可能性があります。 コントロールをEnableにすれば簡単なのですが、ユーザー側からみればクリックしたのに クリックできていない状況が発生する可能性があります。 なんとかして動的に更新し、かつユーザーから見てそういった現象が起きないように 表を更新したいのですがなにかいい方法はないでしょうか? 取得したデータを更新後、一定の秒数が経過すれば再び更新という処理なので DataGridにデータを反映している間にデータを取得しに行くようなことはないものとなっています。 何かよい案がある方がいればお教え願えませんか?
394 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 11:07:02 ] >>393 データ取得用のDataSetと表示用のDataSetを別にしとく。
395 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 11:12:27 ] >>394 ごめんなさい、書き忘れていたんですがその部分は実装しています。 あと、色々小細工する都合上データバインドは行っていない状態なんです。
396 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 11:13:24 ] InProcのセッションモードでの影響をなくす。 (セッション失効の影響を受けなくする) セッションは本来ログイン状態とは無関係の寿命を持つので 不正なログイン状態を招いてしまう危険を最初から回避しておく。 そもそも専用のログイン状態管理機能があるのに わざわざ違う機能を使うのは利点がないだろ。
397 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 11:36:57 ] ごめん純粋に質問。 セッションとログイン状態が無関係ってどういうことですか? セッションが切れてもログイン状態を探し出したりできる?
398 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 11:47:42 ] >>396 2005からはSQL鯖と連動したログインとかスコープ管理出来るようになってるしな 一回試した時に小回りあんま利かなかった記憶があったが
399 名前:364 mailto:sage [2007/03/26(月) 11:55:51 ] すみません もう一つ質問です test.aspxにあるasp:Buttonタグで作成したボタンをクリックしてasp:TextBoxから取得した値を使って 処理を行う部分をtest.aspx.vbに書いているのですが、なぜかbtn_Clickが2回実行されます どうやれば1回だけ実行になりますか?
400 名前:デフォルトの名無しさん [2007/03/26(月) 12:06:03 ] 聞く前にネットでASP入門か、本でも買ってこいよ。 根本的に知識不足。
401 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 12:57:59 ] 元々、特にASP.NETでは、認証状態とセッション状態は独立した概念。
402 名前:364 mailto:sage [2007/03/26(月) 13:31:52 ] すみません 解決しました inputからasp:Buttonに書き換えたときにOnClickを消さなかったからでした
403 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 15:39:49 ] 初心者です。 仕事でVB6とVB2005両方使うみたいなんですが どっちから勉強したほうがいいですか?
404 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 15:44:17 ] >>403 似て非なるものを同時にか。混乱が目に見えるな。
405 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 15:52:00 ] ( -人-).。oO(ナムナム...)
406 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 16:05:04 ] >>403 2005やってからVB6つかうと機能のしょぼさに絶望はする と思うぞ(;´∀`)
407 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 16:18:15 ] オブジェクト指向ってなんですか? 辞書でいろいろ見ましたが未だに意味が分かりません。 オブジェクト指向とそうでないものを何か分かりやすいもので例えて下さい><
408 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 16:21:29 ] | | ∩___∩ | | ノ _, ,_ ヽ (( | プラプラ / ● ● | (=) | ( _●_) ミ _ (⌒) J )) 彡、 |∪| ノ ⊂⌒ヽ / ヽノ ヽ /⌒つ \ ヽ / ヽ / \_,,ノ |、_ノ
409 名前:デフォルトの名無しさん [2007/03/26(月) 16:23:08 ] 別にオブジェクト指向しらなくても.netは使える。
410 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 16:48:12 ] >>407 >オブジェクト指向 サンダーバード >そうでないもの 新八犬伝
411 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 16:57:27 ] >>410 なんというか・・・まぁ気持ちはわかる
412 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 18:47:39 ] ASP.NET2.0でインライン式からクラスを呼び出すことはできないの? aspxファイルに <%@ Import Namespace="vbClass" %>で宣言して <% Dim cls As New Class1 cls.getString()%> (getStringは"Hello World"を返すだけ) と書いてみたが何も帰ってこなかった
413 名前:デフォルトの名無しさん [2007/03/26(月) 18:51:05 ] WebBrowserで画像ファイルを表示させたときに サイズをウィンドウに合わせるにはどうしたらいいですか? PictureBoxにあるBackGroundImageLayoutの プロパティがWebBrowserにはないのですが・・・
414 名前:デフォルトの名無しさん [2007/03/26(月) 20:18:26 ] vb6.0&vb2005初心者です。構造体について教えて下さい。 vb2005の勉強のため簡単なゲームを作ろうと思い、 vb6.0で作られた以下のサイトのソースをvb2005で動かそうと考えました。 <マップの表現> ttp://www001.upp.so-net.ne.jp/yoshihiro/tech1.htm#t4 以下がvb2005に書き直したコードなのですが、 どうしても subMapのインスタンスでうまくいきません。 元のコードをvb2005に移植する為のお知恵をどうかお貸しください。 Module Module1 Dim subMap As tMap Sub Main() subMap = New tMap(9, 9) {} ← ここでエラー subMap.Cell(0, 0).Flag = True ← (ここを直す為に) End Sub End Module Public Structure tCell Dim Data As Integer Dim Flag As Boolean End Structure Public Structure tMap Dim Cell(,) As tCell ← Dim Cell(9,9) As tCell から変更 End Structure
415 名前:デフォルトの名無しさん [2007/03/26(月) 21:32:37 ] >>414 モジュールの概念からしてすでに微妙なのだが・・・ とりあえず直すだけなら。。。 subMap = New tMap(9, 9) {} ← ここでエラー これを ReDim subMap.Cell(9, 9) これでよくね? こっからは蛇足なので、読む必要は特にないwwww 俺的にはRedimとか好きじゃないから別の手段とるとは思うけど・・・ せっかくなので時間ある時に配列関係少し調べてみるといいかもしれない
416 名前:414 mailto:sage [2007/03/26(月) 22:15:34 ] >>415 確かに!ありがとうございます。 配列の初期化やコンストラクタで考えていたのですが、 サイズ変更でよかったんですね。 最初はフォームでやってたのですが、何度もデバックするのならモジュールが早いかな?と 初心者判断でした。 今は構造体やプロパティで頭ごちゃごちゃですが、ある程度先に進んでから勉強しなおそうと思います。
417 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 22:27:29 ] 土曜日に本を買って、それについてたExpressEditionをインストールしたばっかなんですけど、コントロールに マルチページが見つからん。ひょっとして無いの?
418 名前:デフォルトの名無しさん [2007/03/26(月) 22:29:04 ] むしろマルチページってなんどすか?
419 名前:デフォルトの名無しさん [2007/03/26(月) 22:29:38 ] >>418 俺もわからんが もしかしてASP.NETじゃね?wwwww
420 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 22:48:49 ] TabControlの旧時代での呼称
421 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 22:52:53 ] >>420 あぁそれです。thx >>419 市ね
422 名前:デフォルトの名無しさん [2007/03/26(月) 22:55:20 ] >>421 ASP.NETにもそういう感じのコントロールあるぞ・・・・ お前の知識がないんじゃね? そもそもエスパーじゃないんだから VBのExpressがWebDeveloperのExpressか位は書くべきじゃね?
423 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 23:03:41 ] キチガイを相手にしなはんな
424 名前:デフォルトの名無しさん [2007/03/26(月) 23:31:58 ] ちょっと質問です。 VB.NET2005とSQL鯖Expressを使用しています。 もし、これを配布するとして PGの方はいいんですが、SQL鯖のDBをどう配布すればいいのかが不明です クライアントには.netFramework2.0だけ入れてDBをソフト側から管理したいイメージなんですが。 MDFを配布したとしてもDBとして機能しなさそうだしアクセスもできなさそうなので聞きたいんです。 もし、クライアントにMDFファイル配布するだけで接続できないならXMLとかMDBでやろうとは思います。
425 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 23:59:34 ] ローカルにあったりするmdfをさわるには、SQL Server Expressを インストールする必要がある。バッチインストールで入れてしまえばいいと思うが。 Compact Editionという選択肢も(結局インストールは必要だけど)なきにしもあらず。
426 名前:デフォルトの名無しさん [2007/03/27(火) 00:39:25 ] >>380 これ気持ちいいぐらいスルーされてますが、釣りではありません。 なにが足りないのでしょうか?頭関係以外でお願いします。 実はもうこれに3日悩んでます。これを調べるのに2005のスキルが大幅にアップしましたが、この根本的っぽいところで躓いてます。 お願いします。
427 名前:デフォルトの名無しさん mailto:sage [2007/03/27(火) 00:40:49 ] Sistem System
428 名前:デフォルトの名無しさん [2007/03/27(火) 00:48:05 ] すいませんsistemはエラーメッセージの書き写しミスです。 getElementsByNameは'System.Windows.Forms.HTMLDocument'のメンバではありません。 でした。
429 名前:デフォルトの名無しさん mailto:sage [2007/03/27(火) 00:49:23 ] >>428 だから,そのエラーメッセージが全てなんだって スーパーの店員に, 「申し訳ありませんが,getElementsByNameという名前の商品は 当店(System.Windows.Forms.HTMLDocument)では扱っておりません」 って言われてるんだよ その例文とやらがおかしい。一体どこで拾ってきたの?
430 名前:デフォルトの名無しさん [2007/03/27(火) 00:54:47 ] ttp://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?print+200612/06120053.txt ここです!
431 名前:デフォルトの名無しさん [2007/03/27(火) 01:10:12 ] >>385 までは解決したのですが、ここからがヘルプを見ても辿れないのです。