投稿日 | : 2003/01/06(Mon) 09:48 |
投稿者 | : とろ |
Eメール | : |
URL | : |
タイトル | : 定数宣言での As Long = xxx と = xxx& の違い |
Private Const A As Long = &H140
Private Const B = &H140&
上の2つの宣言の仕方について質問です。
私は今まで、 A と B は全く同じ物と思っていましたが、違うのでしょうか?
下のコードを実行した際、
(B) では正しくスクリーンセイバーが起動しますが、 (A) では起動しません。
環境: WinNT4.0(SP6) + VB5(SP3)
'ボタンをクリックすると、スクリーンセイバーを起動するコード
Option Explicit
Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" _
(ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const WM_SYSCOMMAND = &H112&
'Private Const SC_SCREENSAVE As Long = &HF140 '* (A)
Private Const SC_SCREENSAVE = &HF140& '* (B)
Private Sub Command1_Click()
SendMessage Me.hWnd, WM_SYSCOMMAND, SC_SCREENSAVE, ByVal 0&
End Sub