[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 07/06 18:50 / Filesize : 211 KB / Number-of Response : 910
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

VBプログラマ質問スレ(Ver.6.0 まで) part62



1 名前:デフォルトの名無しさん [2013/02/15(金) 16:54:12.79 ]
ここは Visual Basic 〜6.0 の質問スレです。
質問者は使用しているOS、VBのバージョン、サービスパックのバージョン、
「何がしたくて、どうしたけど、どう困っているのか」を明確に書きましょう。

VB.NETは別物なので専門スレで、VBA、APIの質問もそれぞれのスレで。

○ 質問者の心得
 一.質問する前にMSDNやGoogle、過去ログにも目を通してみる。
 二.VBScript、インストーラーなどはこのスレでOK。
 三.質問は第三者にもわかりやすいよう簡潔かつ具体的に。
 四.荒らしは相手しない。

○ 回答者の心得
 一.答えられない質問は無駄に罵倒せずスルー。無理するな。
 二.代用法を強制しない。
 三.回答する上で必須ではない情報をむやみに聞き返さない。
 四.荒らしは相手しない。
 五.VB情報募集中。
 六.回答は質問者が理解できるよう具体的に。

MSDN Online Japan ホーム
 www.microsoft.com/japan/msdn/default.asp
Visual Studio 6.0 Service Pack 6
 msdn.microsoft.com/vstudio/downloads/updates/sp/vs6/sp6/default.aspx
Google
 www.google.co.jp/

前スレ VBプログラマ質問スレ(Ver.6.0 まで) part61
toro.2ch.net/test/read.cgi/tech/1359721249/

※「まず自分で調べる」クセを身につけよう。

82 名前:デフォルトの名無しさん [2013/02/23(土) 12:50:42.11 ]
Windows Blue リリースと同時にVB6.0 ランタイムサポート終了の噂

出元が広報なところが信憑性の高い理由だと?

83 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 12:52:09.75 ]
Windows Blue リリースと同時にVB6.0 ランタイムサポート終了の噂

でもと = >>82

84 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 13:54:50.95 ]
今までに何度同じような未公式発表があっただろうか

85 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 18:14:39.81 ]
今度は公式発表じゃない?SVから情報っぽいし

86 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 19:19:20.83 ]
さすがにもう退役でしょう。何の不思議もない。
逆に今までサポートされていた事が脅威だよ。

87 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 19:23:39.31 ]
VB.NETもそこそこ普及したし、C#も来てるし、もう旧VBのサポを停止すりゃいい

88 名前:デフォルトの名無しさん [2013/02/23(土) 19:28:22.12 ]
結局C#は失敗だったね。Javaユーザーからは相手にされなかった。
Javaのオープンソース資産をC#へ移植しドヤ顔で商用化しているオフショアが後を絶たず
日本企業が元はJavaの資産だとは知らずに金払って使っている実態とかね。
業界からはとにかく嫌われ者のC#ですが、VB.netは徐々にシェアを伸ばしていますね。
ここでVB6のサポートが終了すればJavaに迫る勢いになるのは必至どす。

89 名前:デフォルトの名無しさん [2013/02/23(土) 19:33:26.61 ]
旧VBでしかできないこと、普通のCやC++でしかできなこと、Javaでしかできなこと、.NET系のVBでしか出来ないこと、C#でしかできないこと、C++でしかできないこと

これらを比較して旧VBのメリット・デメリットを明確にし、旧VBを使うべき事案を絞り見つけだすんだ!

90 名前:デフォルトの名無しさん [2013/02/23(土) 19:43:15.12 ]
VB6.0はOLEを使わなければCコンパイラと変わらない実行性能のコードを吐くことが可能。
net系はJITにしようがどうしようがバイナリレベルでは重複コードや冗長コードが満載となる。
でもプログラマーが糞だとどっちも糞言語でしかない。これは何を使っても同じって事。



91 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:24:12.47 ]
そうやってVBしか使えない自分を必死で擁護して虚しくないのかね。
まあたぶんそういう自覚がないから虚しさも感じないんだろうけど。
馬鹿って幸せでいいよね。俺は不幸でも賢いほうがいいけど。

92 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:27:18.84 ]
《参考》 プログラミング言語開発の歴史 Ver1.21

1950||||1960.|||1970.||||1980||1990|||| 2000.||||2010||||

ALGOL→ FORTRAN → BASIC ──→ Sinclair BASIC ───→ DarkBASIC → DarkBASIC Professional [ 独立系 / Windows ]
│││      │     │││
│││      │     ││└───→ MSX-BASIC ───→ 99BASIC → 終了 [ 独立系 / Windows ]
│││      │     │└──→ GW-BASIC ──→ QuickBASIC → 終了 [ Microsoft / DOS ]
│││      │     └─→ CBM-BASIC ──→ AMIGA BASIC → 終了 [ 独立系 / AMIGA ]
│││      │
│││      └──→ FORTRAN77 → FORTRAN90 → FORTRAN95 → 終了 [ 独立系 ]
│││              └──→ FORM → 終了 [ 独立系 / MZ-80K ]
│││
││└──────→ PASCAL ────→ C ─→ C++ → VC++ → 終了 [ Microsoft / Windows ]
││               │││││       │    └────→ VC# [ Microsoft / Windows ]
││               │││││       └───────→ Objective C [ Apple / iOS / Mac ]
││               │││││
││               ││││└──────────→ Visual BASIC → 終了 [ Microsoft / Windows ]
││               ││││                      └──→ GLbasic [ 独立系 / マルチプラットフォーム ]
││               ││││
││               │││└─────────────────→ AppGAME Kit [ 独立系 / マルチプラットフォーム ]
││               │││
││               ││└─────→ Delphi → 終了 [ 独立系 / DOS / Windows ]
││               │└─────→ TL/1 → 終了 [ 独立系 / MSX ]
││               └─────→ PALL → 終了 [ 独立系 / MZ-80K ]
││
│└───→ PL/1 → 終了 [ 独立系 ]
└──────────→ VTL → GAME-MZ [ MZ-80K ] ─→ GAME-86 → RVTL [ 独立系 / Windows / Linux ]

93 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:31:24.92 ]
>>91
> 自分を必死で擁護して虚しくないのかね。
> ま あたぶんそういう自覚がないから虚しさも感じないんだろうけど。
> 馬鹿って幸せでいいよね。

実体験に裏づけされた、説得力ある文章だな (w

94 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:36:32.79 ]
>>91
「VBしか使えない自分」ってもしかしたらお前自身の事じゃないのか?
なぜならそうでない俺からするとそういう発想さえ浮かんでこないからだ。
まあ確かにそういう人もこの世の中にはいるかも知れないが
涙拭いてガンバレよ。

95 名前:デフォルトの名無しさん [2013/02/23(土) 22:38:09.87 ]
問題はVB6しか使えない人が、なぜかVB.netへ移行できない事なんだがなw

96 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:39:43.00 ]
>>92
VB.netを抜いたのはわざとか?wwwwww

97 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:41:37.65 ]
たとえばStringBuilderもなければコレクションに代表されるライブラリも何もない、
かと言ってポインタ使って生のメモリを操作することもできないVBがCと同じぐらい高速って、
こういうのを必死の擁護と言わなくて何をそういうのかね。

まあ言って分かるようならVBerなわけがないんだけど。

98 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:42:18.10 ]
>>92
Delphi 終了してねーぞゴルァ!

99 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:44:42.58 ]
>>97
そういう問題でもない。
VB6のソフトウェア資産は単純にコンパイラが吐いたものだけでなく
ActiveXやCOM、DLLなどの集合体になって資産と化している。
言語は言語であって資産ではない。StringBuilderの有無など鼻糞に過ぎない。

100 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:46:34.33 ]
>>99
そういう問題じゃないと君が思うのは、君が「そういうのが問題になる」ような
コードを書いたことがないVBerだから。馬鹿じゃないのか。
だいいち自分がVBはC並に高速だと言い出したのじゃないのかよ。



101 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:47:11.12 ]
ポインタ使って生のメモリを操作することができるのがすごいなら
俺はMSDOSでMicrosoft Cコンパイラ ver4.0くらいが一番すごいと思うな。
ver 5になると過度な最適化で変な事になる。
何事もバランスが大切って事ですわ。高速論議は経験の浅い
未熟なプログラマがすることだもんね。

102 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:48:22.34 ]
>>101
あんた60代だろ?www

103 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:50:28.22 ]
>>101
> 何事もバランスが大切って事ですわ。高速論議は経験の浅い
> 未熟なプログラマがすることだもんね。
全力で同意せざるをえない。

104 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:55:20.55 ]
StringBuilder基地概って周期的に沸くよな?

105 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 22:57:26.71 ]
>>92
C#がC++からの派生とはどうしても考えられない俺がここにイル

106 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 23:18:29.05 ]
>>105
GLBasicをVBから派生させている段階で
専門学校生の発案であることがわかりそうなもん

107 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 23:18:34.07 ]
VBってBASICからの派生じゃなくてPASCALからの派生だったのか

108 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 23:19:50.17 ]
>>107


109 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 23:23:51.95 ]
C#の血統はこんなところだな。

C++ 戸籍上の父親
VB6 代理母
java 卵子提供者
J++ 書類上の卵子提供者
Delphi 精子提供者
ヘルスバーグ 受胎告知

110 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 23:31:14.31 ]
>>109
良くわかってらっしゃる。熟練プログラマーとお見受けしますた!



111 名前:デフォルトの名無しさん mailto:sage [2013/02/23(土) 23:38:58.95 ]
>>109
C++Builder 異母兄弟

112 名前:デフォルトの名無しさん mailto:sage [2013/02/24(日) 11:55:26.62 ]
VB.net 一卵性双生児

113 名前:デフォルトの名無しさん mailto:sage [2013/02/25(月) 13:54:42.52 ]
>>112
それは違う。同姓同名の赤の他人だろ。

114 名前:デフォルトの名無しさん mailto:sage [2013/02/25(月) 19:39:17.92 ]
>>113
109からの流れを見よ

115 名前:デフォルトの名無しさん mailto:sage [2013/02/25(月) 20:53:29.88 ]
ゴスリンとヘルスバーグでウケとかタチとかの薄い本見たときはぶっ飛んだぞ。

116 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 03:42:17.69 ]
GetPrivateProfileStringで全角文字使えないかんじ?

117 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 03:48:14.84 ]
s = String(20, " ")
r = GetPrivateProfileString(ap,ky,df,s,20,fl)
n = len(s)
としたとき
全角文字が無いとき、例えば abcdefg だったとすると
r=7 n=20 ってなって8文字目がNullコードになってるんだけど
全角文字があるとき、例えば あいう だったとすると
r=6 n=17 ってなって4文字目がNullコードになって
sの変数のサイズが変わっちゃうんだけど
sの消えた3文字分のメモリはどこいっちゃったの?って感じで
これってヤバイの?大丈夫なの?

118 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 03:49:47.13 ]
sには固定サイズの文字列渡したほうがいいの?
Dim s As String * 20
みたいな

119 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 06:59:19.24 ]
文字数とバイト数は違うぞ
LenじゃなくてLenB使ってみ

120 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 10:59:04.17 ]
>>117
全角を使うときは値をダブルクォーテーションで囲えアホが



121 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 19:59:22.42 ]
>>119
それに何の意味があるのだろうか

Len("abc") > 3
LenB("abc") > 6
Len("あいう") > 3
LenB("あいう") > 6
Len("abあ") > 3
LenB("abあ") > 6

122 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 20:01:48.31 ]
>>120
ダブルクオーツで囲っても>>117と結果同じだったんだけど・・・

123 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 20:09:29.55 ]
GetPrivateProfileStringは最初の=以降から文末までを読み込むようで
"あいう"えお"
という二重引用符を間に挟んでやると
文頭と文末の引用符を除いた
あいう"えお
を返してくれたよ

124 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 20:12:51.87 ]
>キー名に関連付けられている文字列が単一引用符や二重引用符で囲まれている場合、GetPrivateProfileString 関数はこれらの引用符を取り除きます。

単一引用符でも取り除かれるのか
これは意外だ

つかVB6付属のMSDNには文字列書き込むときには引用符でくくれとは書いてないように見えるのだが

125 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 20:22:42.95 ]
今どきiniとかないわー
xmlにしろよ

126 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 20:25:59.25 ]
っていうか質問の内容を勘違いしないで
全角文字が取得できないなんて一言も言ってないし
20文字分(40bytes)のメモリを割り当てた変数が
全角含む文字列渡すと全角1文字につき1byte分減って戻ってくるけど
これってメモリ関連のトラブルの発生源になったりしないか聞きたいんだけど

127 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 20:28:31.08 ]
固定長文字列にしたら元の文字列サイズ分ちゃんと戻ってくるのな
可変長文字列をGetPrivateProfileStringに渡しちゃまずいのか?

128 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 20:35:35.69 ]
>>125
少量のキーと値の関連付け保持に便利じゃん
レジストリは使いたくないし、xmlだと一部の文字にエスケープとか使って配慮しないといけないし

129 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 20:58:55.89 ]
>>126
ANSIとUNICODEの変換でそう見えるだけ
UNICODEでの文字数とANSIの文字数(バイト数)は一致しない

130 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 21:17:03.54 ]
固定長文字列でもちゃんと戻ってくるかと思ったけど違ったわ
"A"で初期化したけど可変長文字列と同様に減って戻ってきてるわ
減った分が32、半角スペースで埋まって戻ってきた
やはり仕様なのか、もしくは全角使うのがまずいのか
GetPrivateProfileStringAじゃなくGetPrivateProfileStringWを使うべきなのか

>>129
APIが全角1文字を半角2文字分としてよこしてVBが2文字分の領域を確保するけど
バイトコードからVBが全角文字だと判断して2文字分を1文字分に減らすってこと?



131 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 21:25:24.91 ]
あ=82A0
をAPIが 82 と A0 の1バイト文字(半角)2文字分としてVBに渡して
がVBで確保した2文字分の領域4バイト 0000 0000 に上書きされて
0082 00A0 となったところをVBが全角文字と判断して
0082 00A0 → 82A0 という1文字分(2バイト)減らして変数に戻すってこと?

132 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 21:57:53.94 ]
VBが確保した領域10文字なら10バイト分をAPIに渡して
文字列が「あAA」なら
APIは10バイトの最初2バイトを82、A0で埋めて3バイト目を65、4バイト目を65、5バイト目を0にしてVBに返し
VBは10バイトを1バイトずつ解釈していってunicodeに変換して変数に再割り当てしてるってことなのか?
でもそれだと適当な文字で初期化した固定長文字列の減った部分が半角スペースで初期化されてるのはおかしいし
どうなってんだこれ

133 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:05:41.59 ]
何このバカ?
値が取れればそれでいいだろ?頭使えよ。

134 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:06:22.11 ]
>>129
なんかわけわかんねえレスだなと思ってたらGetPrivateProfileStringの戻り値の話?
戻り値は書き込んだバイト数返すはずだからLenやLenBした値と違うのは当たり前じゃね?
そうじゃなくて変数の割り当てメモリが減ってるって話なんだけど

135 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:10:14.91 ]
GetPrivateProfileString自体がVB6の関数でも何でもないのに戻り値が理不尽だと騒ぐバカ。
相手にする方がどうかしてる。

136 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:12:23.64 ]
だれも戻り値の話なんかしてないだろ
確保しておいた変数のサイズがAPIに渡したら変数のサイズが変わったって言ってんだよ
文字列の長さの話じゃねえし戻り値の話でもない

137 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:14:00.99 ]
>>136
冷静に。
サイズなんか変ってないよ。
BSTRとみなした時の文字数が変っただけ。

138 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:14:30.29 ]
変数の割り当てメモリはどうやって調べた?
文字列の長さ=割り当てメモリじゃねーぞ。

139 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:15:56.02 ]
>>136
なに興奮してんだこのアホ。関係ない戻り値で反応しやがったw

140 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:26:25.87 ]
>>137-138
Dim s As String * 10
s = String(10, "A") ' s="AAAAAAAAAA" Len(s)=10, LenB(s)=20
GetPrivateProfileString(ap,ky,df,s,10,fl)
のコードで

文字列が"AAAA"の場合
s="AAAA0AAAAA" ( 0 はNull文字)

文字列が"あAA"の場合
s="あAA0AAAAA_" ( 0 はNull文字 _ は半角スペース)

固定長文字列を渡した場合、全角含む文字が渡された場合に後部に半角スペースが入るのは何でなの?
これって確保した変数サイズが変わったってことじゃないの?



141 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:29:01.06 ]
>>140
半角スペースだって分かってるならTrimすればええやん 初心者?

142 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:30:12.12 ]
> これって確保した変数サイズが変わったってことじゃないの?
違います。終了。

143 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:33:16.70 ]
>>141
Trimする意味がわからんのだが?

>>142
全部Aで埋めたはずなのに何で後部の文字が半角スペースになるの?APIの仕様に書かれてない処理なんだけど

144 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:33:18.57 ]
>>140
とりあえず2つの問題を区別しよう。

(1) なぜ最後に半角スペースが付くのか
(2) 「変数のサイズ」(確保されたメモリ領域のバイト数)は変ったのか

(1)は本当だと仮定して理由は分からない。
(2)は変ってません。変ったのは、20バイトのメモリ内のデータをUTF-16の文字数と
みなした時の文字数だけ。

145 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 22:44:53.79 ]
>>144
Lenしたときの文字数が変わるのは可変長文字列を使った>>117のケースで
>>140は固定長文字列を使ってるからAPI通したあともLenした文字数は変わってない
可変長のときなら減った文字数分の半角スペースが固定長文字列のときに後部に埋まってるという話なんだけど

固定長のとき
確保したメモリいっぱいにAの文字を埋めたんだから
APIが前部のデータを上書きしても後部はいじってないのだから
メモリをそのまま引き出したのなら後部はAのままのはずなのに半角スペースが入ってる
これでメモリに異常は起きてないっておかしいんじゃないの?

146 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 23:07:10.72 ]
つかもういいよ
仕組み知ってる人いなさそうだし
ここで質問した俺が大馬鹿だったてことでいいよ
VBでAPIを使うときVBがAPIとどうやりとりしてるかの知識が足りない俺がバカでした
さよなら

147 名前:デフォルトの名無しさん mailto:sage [2013/02/26(火) 23:10:48.17 ]
VB6っていうか、もうWin9x時代のこと大分忘れてるから混乱するな...
冷静に考えるとBSTRはUTF-16だから、ポイントしている領域が同じなら「文字数」が
変るのは確かに変だ。

質問者はひょっとして(今時)Aの付く方のAPIを呼んでるのかね。
VBはこの辺りブラックボックスだから困るんだけど、この場合は、恐らく
関数の呼び出しの前後で.NETでいうマーシャリングが入るんだろう(想像)。

呼出し後に文字数が変るのはこのためか?

148 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 02:48:18.10 ]
APIではバッファの最大長を指定する
戻りでヌルターミネートされた先の領域なんて保障されてないだろ

API呼び出し後にANSI-UNICODEの変換が入ってるから
その変換時に(VBとしての)変数のサイズが変わっても不思議も問題もない

149 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 03:02:32.75 ]
VB6からWのほうって呼び出せるのか?

150 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 03:05:23.37 ]
呼べることは呼べる
でもA呼び出すよりメンドクセ



151 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 04:26:45.46 ]
呼び出せんのか
知らなかったわ
どうやんの?

152 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 04:46:20.16 ]
呼び出すだけなら普通に〜WまでDeclareして呼ぶだけ
文字列渡したらどうなるかは知らん

153 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 05:00:16.69 ]
当然ながらメンドクセと言ってる部分のことを尋ねているのだが

154 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 05:03:47.90 ]
Visual Basicに関するメモ
homepage3.nifty.com/numericworld/computer/vb/memo.htm

APIとの文字列のやりとり(ANSI vs UNICODE変換)

を嫁

155 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 12:27:49.61 ]
declare function GetPrivateProfileStringW lib "kernel32" ( _
byval ap as long, byval ky as long, byval df as long, byval s as long, byval l as long, byval fl as long) as long
dim s as string
s = string(10, vbnullchar)
l = GetPrivateProfileStringW(strptr(ap), strptr(ky), strptr(df), strptr(s), 10, strptr(fl))
s = left(s, l)

156 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 16:02:58.71 ]
正解!

157 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 21:39:47.58 ]
%TEMP%フォルダに
DF〜.tmpというゴミファイルが大量にたまってると思ったら
旧VBのせいかよ!

158 名前:デフォルトの名無しさん [2013/02/27(水) 21:42:33.26 ]
いつの間にかVB.netをVBって呼ぶようになったのね。
VBできますか?って言われたから、てっきりVB6.0の事かと思って「ハイ!」と答えたら
あとでVB.netだったと分かりさあ大変。納期は3週間しかないけど対応できるだろうか?

バカだなおれorz

159 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 21:46:01.33 ]
アイコン使ってる旧VB製のやつが原因か
まぁIE9でも作られてるが・・・

160 名前:デフォルトの名無しさん mailto:sage [2013/02/27(水) 21:53:10.31 ]
アイコンなんて使ってないけど?



161 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 21:41:42.10 ]
変数のポインタアドレス渡すとか何か怖いな

162 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 21:43:47.88 ]
>>155
ていうかこれ書き込まれる文字コードはunicodeってわけじゃないのな
引数としてunicodeが渡せるってだけなのな

どっちみちファイルにANSIで書き込まれるのならAとWどっちを使っても同じやん旧VBからは

163 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 21:57:08.78 ]
INIファイルの先頭にBOMがあるかないかで動作が変わったような記憶が。
違ってたらごめん。

164 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 22:13:13.73 ]
>>161
ポインタアドレスってなんだよ?ポインタ自体がアドレスだろうが?
それともポインタのポインタか?そんなもん渡してませんが何か?

これだからVB6オンリープログラマは怖いわ・・・。

165 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 22:24:36.72 ]
ポインタってアドレスを指す変数のことじゃなかったのか・・・勉強になるなこのスレ

166 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 22:43:02.98 ]
おとなしくxmlを使えばいいのに

167 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:04:23.74 ]
>>165
いつからポインタが変数になったんだよ?w

168 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:06:05.49 ]
配列なら変数だな

169 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:18:06.38 ]
普通の変数は値を保存しているけど
ポインタは変数の値を保存しているメモリのアドレスを保存している変数

170 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:21:17.55 ]
ポインタは変数ではないよ。そんな風に教えたのは一体どこの専門学校だよ?大原か?



171 名前:デフォルトの名無しさん [2013/02/28(木) 23:23:23.90 ]
>>170
ググるとポインタは変数ですと説明しているサイトが山のようにひっかかるからだろ?
アホの仲間入りをさせておけばええやんw

172 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:24:10.45 ]
語義を考えれば分かると思うが、ポインタとはもともとは左辺値が入る変数やレジスタのこと。
左辺値そのもののこともポインタと言ったりするが、それは派生的用法だろう。

173 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:24:30.44 ]
>>169

ポインタ (プログラミング) - Wikipedia
ja.wikipedia.org/wiki/%E3%83%9D%E3%82%A4%E3%83%B3%E3%82%BF_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0)

174 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:26:02.52 ]
変数のように扱えるから、初心者はアドレス専用変数と考えると分かりやすいからでしょう。
言語仕様は関係ないでしょうから。

175 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:28:59.80 ]
>>172
>ポインタとはもともとは左辺値が入る変数やレジスタのこと。

一体どんな言語を前提として言ってるのかね?アセンブラかい?
だったらWORD PTRとかQWORD PTRとかを変数と呼ぶのかい?
少なくともC言語では言語仕様上ポインタは変数ではないぞ。
変数と同じように値を代入する事はできるがな。

176 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:30:23.30 ]
VB6でポインタを語っている時点で終わってる訳だが?

177 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:31:46.23 ]
前スレに関数ポインタをVBから実行するテクがあったな

178 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:33:29.67 ]
StrPtrとかなんで隠し関数なんだ?

179 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:35:23.62 ]
>>175
だから、君が本来の意味と派生的な意味の区別がついてないだけ。
馬鹿はこれだからな。人が言ってるそばからまったく。

180 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:35:36.60 ]
AddressOf 演算子を変数だと言い出す奴が出現しそうだなw



181 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:35:47.31 ]
仕様と実装は別じゃね
Cコンパイラがポインタを変数のように扱うかもしれんだろ

182 名前:デフォルトの名無しさん mailto:sage [2013/02/28(木) 23:36:37.23 ]
本来の意味と派生的な意味をごっちゃにしてる奴が話を混乱させているだけだろ?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<211KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef