2012-01-06 36 views
1

画面の倍率値を取得しようとする小さなモジュールを作成しました。これは、magnification.dll内のいくつかのプロシージャを呼び出します。私はそれを正しくコーディングしていると思うが、私は恐ろしい453エラー(エントリポイントを見つけることができない)を得ている。ここでVBAで倍率APIを使用して画面の倍率を取得する

はコードです:

Public Declare Function MagInitialize Lib "magnification.dll"() As Boolean 
Public Declare Function MagUninitialize Lib "magnification.dll"() As Boolean 
Public Declare Function MagGetFullscreenTransform Lib "magnification.dll" _ 
(ByVal pMagLevel As Single, ByVal pxOffset As Integer, ByVal pyOffset As Integer) As Boolean ' 

Sub test123() 
Dim sngValue As Single, intX As Integer, intY As Integer 
If (MagInitialize) Then 
    If MagGetFullscreenTransform(sngValue, intX, intY) Then ' 
     Debug.Print sngValue & " was returned from MagGetFullscreenTransform. " 
    Else 
     Debug.Print "MagGetFullscreenTransform was false." 
    End If 
Else 
    Debug.Print "Can't initialize" 
End If 

If Not (MagUninitialize) Then 
    Debug.Print "Can't uninitialize" 
End If 

End Sub 

私は(私の知る限り、エイリアスはオプションである知っているように、それが1つを必要としないように)手続きの別名を知りません。私は、私のExcelプロジェクトの参照としてMagnification.dllを "チェック"しようとしましたが、それは私を許さないでしょう。 (指定したファイルへの参照を追加できません)。

提案?私はmagnificationの価値を引き出す必要があります。

ありがとうございました!

答えて

2

私の窓7 magnification.dll輸出Mag/UnInitializeが、MagGetFullscreenTransformをエクスポートしませんが、docsは、私はあなたの使用していないと仮定し8の機能を、勝つように見えるので、最低限のクライアントのバージョンは、「Windowsの開発者プレビュー」であると言います。

+0

正しい。私はWindows 7です。画面の拡大率を制御する別の方法があるのだろうかと思います。 – Harry

関連する問題