hspsmart.dll
Version 1.11(CrystalDiskInfo 8.2.3)
Date 2019/08/12
Author Copyright (C) 2008-2019 hiyohiyo (CrystalDiskInfo作者様)
Copyright (C) 2013-2019 イノビア (hspsmart.dll 作成)
hspsmart.dll
COMMAND
コマンドタイプ
// 定数値は変更される可能性があります
#define global CMD_TYPE_UNKNOWN 0
#define global CMD_TYPE_PHYSICAL_DRIVE 1
#define global CMD_TYPE_SCSI_MINIPORT 2
HOSTREADSWRITESUNIT
コマンドタイプ
// 定数値は変更される可能性があります
HOST_READS_WRITES_UNKNOWN = 0
HOST_READS_WRITES_512B = 1
HOST_READS_WRITES_32MB = 2
INFO_LIST
取得可能なディスク情報ID一覧
【文字列型】【smart_GetInfoStringW】で指定可能なディスク情報ID
-
INFO_ENCLOSURE // ディスクエンクロージャ
INFO_SERIALNUMBER // シリアルナンバー
INTERFACE
インターフェース
#define global INTERFACE_TYPE_UNKNOWN 0 // 不明
#define global INTERFACE_TYPE_PATA 1 // パラレルATA/IDE
POWER_ON
時間単位
smart_GetInfoIntでINFO_DETECTEDTIMEUNITTYPE、MEASUREDTIMEUNITTYPEを指定した時に返ってきます。
smart_AdminSelfRunW
自分自身を管理者権限付きで起動する
自分自身を管理者権限付きで起動します。
起動時に付加されたコマンドラインは引き継がれます。
引き継ぐ必要がない場合は、smart_ShellExecuteExAdminWを使用してください。
内部的には smart_ShellExecuteExAdminWを引数を0で呼び出しています。
smart_CheckDiskStatus
ディスクのステータスを取得
ディスクのステータスを取得します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
戻り値は以下のようになります。
smart_DisableAam
AAMを無効化します
AAMを無効化します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
stat が 0 の場合は成功しています。
smart_DisableApm
APMを無効化します
APMを無効化します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
stat が 0 の場合は成功しています。
smart_DiskScan
ディスクを検出します
ディスクを検出します(CrystalDiskInfoの再検出と同じ)
初回起動時やディスクが後から追加・変更・削除されたりしたときに実行してください。
この処理はやや重いです。再生中の音声が一瞬途切れることもあります。
smart_EnableAam
AAMを有効化します
AAMを有効化します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
AAMの値は128~254を指定します。範囲外の場合は近似値が設定されます。
stat が 1 の場合は成功しています。
smart_EnableApm
APMを有効化します
APMを有効化します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
APMの値は1~254を指定します。範囲外の場合は近似値が設定されます。
stat が 1 の場合は成功しています。
smart_GetAamValue
AAMの現在値を取得します
AAMの現在値を取得します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
AAMが無効化されている場合でもAAMをサポートしていれば取得可能です。
smart_GetApmValue
APMの現在値を取得します
APMの現在値を取得します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
APMが無効化されている場合でもAPMをサポートしていれば取得可能です。
smart_GetCount
検出されたディスクの数を取得します
検出されたディスクの数を取得します。
エラー時マイナス値を返す場合がありますので、repeat などで直接使用すると無限ループする可能性があります。
エラーが返ってきてないかどうかチェックしてください。
smart_GetInfoDouble
ディスクの情報を取得(64bit実数型)
ディスクの情報を取得します。(64bit実数型)
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
取得したいディスク情報ID は以下のものが指定できます。
smart_GetInfoInt
ディスクの情報を取得(32bit数値型)
ディスクの情報を取得します。(32bit数値型)
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
取得したいディスク情報ID は以下のものが指定できます。
smart_GetInfoInt64
ディスクの情報を取得(64bit数値型/32bit分割タイプ)
ディスクの情報を取得します。(64bit数値型/32bit分割タイプ)
64bit値をLowPart(32bit)、HighPart(32bit)に分割して取得します。
64bit値そのまま取得する場合は、smart_GetInfoInt64Exを使用してください。
smart_GetInfoInt64Ex
ディスクの情報を取得(64bit数値型)
ディスクの情報を取得します。(64bit数値型)
64bit値を直接取得します。
64bit値を分割して取得する場合は、smart_GetInfoInt64を使用してください。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
smart_GetInfoStringSizeW
文字列型情報の格納に必要なサイズを取得
文字列型情報の格納に必要なサイズを取得します。
smart_GetInfoStringW で使用します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
取得したいディスク情報ID は以下のものが指定できます。
smart_GetInfoStringW
ディスクの情報を取得(文字列型/UTF-16)
ディスクの情報を取得します。(文字列型/UTF-16)
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
取得したいディスク情報ID は以下のものが指定できます。
smart_GetInfoStruct
ディスクの情報を取得(構造体/配列型)
ディスクの情報を取得します。(構造体/配列型)
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
取得したいディスク情報ID は以下のものが指定できます。
smart_GetInfoStructSize
構造体/配列型情報の格納に必要なサイズを取得
構造体/配列型情報の格納に必要なサイズを取得します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
取得したいディスク情報ID は以下のものが指定できます。
smart_GetRecommendAamValue
AAMのメーカー推奨値を取得します
AAMのメーカー推奨値を取得します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
AAMが無効化されている場合でもAAMをサポートしていれば取得可能です。
smart_GetRecommendApmValue
APMのメーカー推奨値を取得します
APMのメーカー推奨値を取得します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
APMが無効化されている場合でもAPMをサポートしていれば取得可能です。
smart_GetSmartInfoInt64
S.M.A.R.T. 情報を取得します(64bitを32bitずつ分割)
S.M.A.R.T. 情報を取得します。
64bit値は32bitずつ分割して取得されます。
64bit値を直接取得する場合は smart_GetSmartInfoInt64Ex を使用してください。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
smart_GetSmartInfoInt64Ex
S.M.A.R.T. 情報を取得します(64bit)
S.M.A.R.T. 情報を取得します。
64bit値を分割して取得する場合は smart_GetSmartInfoInt64 を使用してください。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
smart_GetSmartMaxAttribute
S.M.A.R.T.の項目の最大数取得
S.M.A.R.T.の項目の最大数が返ります。
通常は30です。
S.M.A.R.T.の項目数を取得する場合は、smart_GetInfoIntのINFO_ATTRIBUTECOUNTを呼び出してください。
smart_Init
初期化します
初期化します。
戻り値は操作ハンドルですので、保存しておいてください。
操作ハンドルはほとんどの命令・関数で使用します。
0の場合は失敗しています。
実行には管理者権限が必要です。
smart_IsWorkaroundHD204UI
サムスン HD155UI/HD204UIの不具合回避機能が有効かどうか?
サムスン HD155UI/HD204UIの不具合回避機能が有効かどうか取得します。
無効の場合は 0、有効の場合は1が返ります。
smart_SetAtaPassThroughSmart
IDE/ATA_PASS_THROUGH を使用します
IDE/ATA_PASS_THROUGH を使用するかの設定。
使用すると詳細な情報が取得できる可能性があります。
一部環境(Intel 製 ATA ドライバ)では音飛びやマウス飛びが発生することが報告されています。
問題が発生する場合は無効にしてください。
smart_SetCsmiType
CSMIを使用するかどうか
Intel RAID 環境において CSMI (Common Storage Management Interface) 経由でディスク情報を取得します。
以下のフラグが指定できます。
通常は自動検出でよいと思います。
smart_SetThreshold
健康状態の基準値(閾値)を指定
健康状態の基準値(閾値)を指定します。
健康状態の基準値(閾値)の現在値を取得するには、smart_GetInfoInt()を実行します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
smart_SetUSB1394
USB/IEEE1394接続の外付けディスクを検出対象にする
USB/IEEE1394接続の外付けディスクを検出対象にするかどうか?
フラグには以下のものが OR 値で指定できます。
// SCSI ATA TRANSLATION 経由でアクセスを試みます。
smart_ShellExecuteExAdminW
指定プロセスを管理者権限つきで起動する
指定プロセスを管理者権限つきで起動します。
文字エンコードはUnicodeですが、自動でShift_JISからUTF-16に変換されるため、cnvstowなどで変換する必要はないです。
通常は、実行ファイル名、コマンドラインに文字列を指定します。
smart_UpdateIdInfo
ディスクの情報を更新(S.M.A.R.T.以外)
ディスクの情報を更新します。(S.M.A.R.T.以外)
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
stat が 0 の場合は成功しています。
smart_UpdateSmartInfo
ディスクのS.M.A.R.T.情報を更新
ディスクのS.M.A.R.T.情報を更新します。
ディスク番号は0番から始まり、最大数は smart_GetCount() で取得できます。
stat が 0 の場合は成功しています。
TRANSFER_MODE
転送モード
smart_GetInfoIntでINFO_TRANSFERMODETYPEを指定した時に返ってきます。