VB.NET質問スレ(Part44)at TECH
VB.NET質問スレ(Part44) - 暇つぶし2ch776:デフォルトの名無しさん
22/11/27 13:48:16.31 Pm5jqeER.net
XPでも動かすのがモットーだから未だに.net2.0だけどそろそろ上げてもいいかな…って気がするんだけどさてどれにすっかなーと
ちな7だから新し目のは漏れなく駄目だろうけど

777:デフォルトの名無しさん
23/01/02 02:03:50.75 8T2JCaCm.net
MacのこういうアプリをWindowsでも作りたいんですけど、VB.NETで出来るでしょうか?
URLリンク(ameblo.jp)
Macでは「Macintosh版のVisual Basic」に喩えられるXojoという環境で作られてるらしいんですが、それならWindows版はVBでいいんじゃないの?と単純に思ったのですが…

778:デフォルトの名無しさん
23/02/07 09:23:00.91 fWU0zFcr.net
Update to the .NET language strategy
URLリンク(devblogs.microsoft.com)
> We remain committed to Visual Basic and continue to invest in maintaining C# interop and Visual Studio features for folks that love Visual Basic or want a stable language.

779:デフォルトの名無しさん
23/03/24 17:51:18.10 cWx3prGd.net
初心者です
タスケテケスタ
意味を教えてください
Declare Function abc_open Lib "abc.dll" (ByRef lnga As Integer, ByVal
lngb As Integer) As Integer
Declare Function abc_write16 Lib "abc.dll" Alias "abc_write" (ByVal
lnga As Integer, ByVal lngaWrtBuffer As Integer, ByVal lngc As
Integer) As Integer

780:デフォルトの名無しさん
23/03/24 19:06:37.72 5FBKYBTZ.net
非.NETで作られたDLLの関数を呼び出すための宣言だよ
URLリンク(learn.microsoft.com)

781:デフォルトの名無しさん
23/03/24 20:44:56.31 ERXieoFI.net
>>770
回答ありがとうございます!
ただ!後ろに並んでる変数も含めて理解できてないんです。
あつかましくて申し訳ないですが、もう少し噛み砕いていただけると助かります。。

782:デフォルトの名無しさん
23/03/24 21:54:05.08 1/lPFVAY.net
そのabc.dllとやらのマニュアル/ドキュメントを参照せよ

783:デフォルトの名無しさん
23/03/24 23:13:17.73 ERXieoFI.net
詳細は不明だとして、認識の仕方だけあってるか聞いてもらえますか。
Declare Function abc_open Lib "abc.dll" (ByRef lnga As Integer, ByVal
lngb As Integer) As Integer
→ 解釈:abc.dll内にあるabc_openという関数にInga、Ingbという引数を代入してint型で戻ってくる
質問1.かっこ内で2つの変数が宣言されているがどういうこと?
質問2:戻り値はどこに格納される?
abc.dllの仕様が分からないと上記の質問も分からない?
トンチンカンな事言ってると思いますが。。

784:デフォルトの名無しさん
23/03/25 00:30:39.77 LzvHgNP+.net
普通にfunction作るときに
Function FooBar (ByRef hoge As Integer, ByVal huga As Integer) As Integer
  '''(なにかの処理)
End Function
って定義するのと同様に、dllの中にある abc_openという関数をプロジェクトで使えるように宣言している
既存のコードを読んでいるのなら、そのabc_openでコード全体を検索すれば実際に使用しているところが見つかるんじゃね?

785:デフォルトの名無しさん
23/03/25 05:48:46.84 F9vkZ/PE.net
>>772
>>774
ありがとうございます!
内容確認してみます!
勉強中なのでまた来ると思います(;o;)

786:デフォルトの名無しさん
23/03/25 15:31:44.19 F9vkZ/PE.net
みなさんこんにちは
質問をばさせていただきたく
Declare Function abc_write16 Lib "abc.dll" Alias "abc_write" (ByVal lnga As Integer, ByVal lngaWrtBuffer As Integer, ByVal lngc As Integer) As Integer
上記のAliasは"abc.dll"を"abc_write"という�


787:シ称で扱う という認識でよろしいですかね?



788:デフォルトの名無しさん
23/03/26 10:00:46.68 t5F8xIRn.net
aliasで指定するのはdllじゃなくて関数の元の名前
Alias 句 (Visual Basic)
URLリンク(learn.microsoft.com)
VB 基礎編 (その九)
URLリンク(sak.cool.coocan.jp)

789:デフォルトの名無しさん
23/03/26 22:34:02.95 KCoWgyug.net
>>777
ありがとうございます!
参考にさせてもらいます(^-^)

790:デフォルトの名無しさん
23/04/30 01:44:08.54 oNkXc/Ek.net
すみません教えてください。詳しく教えてほしいので詳しく書きます。
(歴JavaScript→PHP→VBA→VB.net/自分で作って、仕事で使って、困らない程度のスキル)
(使用PC,8世代i7,8700T,64gb)
1- エクセルVBAの64bit環境かなにかでは、 integerもlongも同じ64bitのメモリを確保しているとかで、
だからlong推奨とかWEB上の初心者向けサイトには書いてあった記憶があります
(記憶違いならごめんなさい)
でも、これって(CPU内などの)所謂キャッシュメモリ上も同じ理屈なのでしょうか。
例えば100万程度の配列を回して処理するときに、どうなのでしょうか?
2- それらをの答えを踏まえ、VB.netでも同じ理屈で同じ答えなのでしょうか?
作成中のプリログラムの処理が遅い場合にサイズを厳密にすることを奥の手にする感じに考えていますが、それが奥の手なのか無意味なのかわかりません。
現在、VB歴6か月程度ですが、次期プログラムから環境をC#に移行しようと思っています。
周りに聞く人もおらず、WEB頼りでやってきましたが、変な癖が付くとまずいので、不安に思っています。
最新の情報が多いのもC#に移行する理由でもあります。
PHPから入ったので、型に関係にする部分は不安です
今から最小の型を使う癖をつけておいた方がいいのでしょうか(Int16,Int32,Int64等)
(もちろんsqlserverは最小のサイズでやっていますが)
処理するデータ量は多いです。VBAで処理に小1時間かかるのでVB.netに移行しましたが、データはまだまだ増えそうです。
C#に移行することを踏まえて教えていただけると幸いです。よろしくお願いします。

791:デフォルトの名無しさん
23/04/30 03:01:38.76 faZy+FP7.net
>>779
PCを買い替えろ
まずはそれからだ

792:デフォルトの名無しさん
23/04/30 04:38:17.68 xlDTnGib.net
ワロタ

793:デフォルトの名無しさん
23/05/01 16:16:30.20 nutSXmqo.net
奥の手でもなんでもなくて適切な型をつかうのは基本中の基本だと思うがな
ちゃんとDB使って処理して1時間なら言語なにつかっても大差ないと思われ

794:デフォルトの名無しさん
23/05/10 02:41:26.03 VdVKPMIs.net
何の処理が原因で遅くなっているか切り分けたら?
Stopwatchクラス使えはいいよ。

795:デフォルトの名無しさん
23/08/20 21:08:30.63 5xty0CqD.net
explain使ってSQLのチューニングしたらいいんじゃないかな
100万件程度なら一瞬で終わる
キャッシュ云々の前にアプローチが間違ってる気がする
PHPとC#、VB.netなら処理速度変わらん

もしSQLの発行回数が2回以上になってるんだったら1回にすればいい
ループごとにSQLを実行するような処理だったら論外

VB.netならフリーのプロファイラが十分使えるからツールでどの箇所が時間かかってるかはすぐわかる

というかその書き方だとすでに原因となる箇所はだいたいわかってるんじゃないだろうか
とにかくループを減らす
VBAで1時間ならVB.netは1秒未満を目指せると思う

型とかアルゴリズム以前にもっと根本的な問題があると思う
そしてどういう問題を処理しようとしているか書かないと一般論しか帰ってこない気がする

速度カイゼンはとにかくループの削減が基本
全探索をなくすのが基本
ソートをなくすのが基本

796:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch