総合掲示板(アップロードファイル合計最大1MB)/添付ファイルはプレビュー時に消えるため、再設定をお願いします。
新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃過去ログ ┃ホーム
620 / 988     ←次へ | 前へ→

Re:CrystalDiskInfo 8.7.0 のソースコードについて(バグ?)
 ひよひよ  - 20/8/16(日) 18:53 -
▼G神さん:
>CrystalDiskInfo 8.7.0 のソースコードについてお尋ねします。
>
>以下の2つの処理は、いずれも、同じロジック判定を行っているように思えますが、
>両者のコードは、丸括弧の括り範囲が微妙に違うため、判定結果は異なります。
>
>AND/OR条件から判断して、CDiskInfoDlg::GetDiskStatusReason側のコードが
>間違っているように思います。
>
>いかがでしょうか? 
>
>// AtaSmart.cpp ... CAtaSmart::CheckDiskStatus関数内(9368行〜9377行)
>--------------------------------------------------------------------
> else
> if((vars[i].Attribute[j].Id == 0xE8 && (vars[i].DiskVendorId == SSD_VENDOR_PLEXTOR || vars[i].DiskVendorId == SSD_VENDOR_SANDISK))
> || (vars[i].Attribute[j].Id == 0xBB && vars[i].DiskVendorId == SSD_VENDOR_MTRON)
> || (vars[i].Attribute[j].Id == 0xB1 && vars[i].DiskVendorId == SSD_VENDOR_SAMSUNG)
> || (vars[i].Attribute[j].Id == 0xD1 && vars[i].DiskVendorId == SSD_VENDOR_INDILINX)
> || (vars[i].Attribute[j].Id == 0xE7 && vars[i].DiskVendorId == SSD_VENDOR_SANDFORCE)
> || (vars[i].Attribute[j].Id == 0xAA && vars[i].DiskVendorId == SSD_VENDOR_JMICRON && ! vars[i].IsRawValues8)
> || (vars[i].Attribute[j].Id == 0xCA && vars[i].DiskVendorId == SSD_VENDOR_MICRON)
> || (vars[i].Attribute[j].Id == 0xE9 && (vars[i].DiskVendorId == SSD_VENDOR_INTEL || vars[i].DiskVendorId == SSD_VENDOR_OCZ || vars[i].DiskVendorId == SSD_VENDOR_OCZ_VECTOR))
> )
>
>// DiskInfoDlgInit.cpp ... CDiskInfoDlg::GetDiskStatusReason関数内(494行〜504行)
>--------------------------------------------------------------------------------
> else
> if((m_Ata.vars[index].Attribute[j].Id == 0xE8 && (m_Ata.vars[index].DiskVendorId == m_Ata.SSD_VENDOR_PLEXTOR || m_Ata.vars[index].DiskVendorId == m_Ata.SSD_VENDOR_SANDISK))
> || (m_Ata.vars[index].Attribute[j].Id == 0xBB && m_Ata.vars[index].DiskVendorId == m_Ata.SSD_VENDOR_MTRON)
> || (m_Ata.vars[index].Attribute[j].Id == 0xB1 && m_Ata.vars[index].DiskVendorId == m_Ata.SSD_VENDOR_SAMSUNG)
> || (m_Ata.vars[index].Attribute[j].Id == 0xD1 && m_Ata.vars[index].DiskVendorId == m_Ata.SSD_VENDOR_INDILINX)
> || (m_Ata.vars[index].Attribute[j].Id == 0xE7 && m_Ata.vars[index].DiskVendorId == m_Ata.SSD_VENDOR_SANDFORCE)
> || (m_Ata.vars[index].Attribute[j].Id == 0xAA && m_Ata.vars[index].DiskVendorId == m_Ata.SSD_VENDOR_JMICRON && ! m_Ata.vars[index].IsRawValues8
> || (m_Ata.vars[index].Attribute[j].Id == 0xCA && m_Ata.vars[index].DiskVendorId == m_Ata.SSD_VENDOR_MICRON)
> || (m_Ata.vars[index].Attribute[j].Id == 0xE9 && (m_Ata.vars[index].DiskVendorId == m_Ata.SSD_VENDOR_INTEL || m_Ata.vars[index].DiskVendorId == m_Ata.SSD_VENDOR_OCZ || m_Ata.vars[index].DiskVendorId == m_Ata.SSD_VENDOR_OCZ_VECTOR))
> )
> )
ご指摘ありがとうございます!
同じようなコードが複数個所にある時点で設計が悪すぎなのですが、8.8.0 AlphaXで直したつもりでしたが、)の不一致がありました。

Alpha12で直します。


引用なし

パスワード


・ツリー全体表示

CrystalDiskInfo 8.7.0 のソースコードについて(バグ?) G神 20/8/16(日) 18:39
Re:CrystalDiskInfo 8.7.0 のソースコードについて(... ひよひよ 20/8/16(日) 18:53
Re:CrystalDiskInfo 8.7.0 のソースコードについて(... G神 20/8/16(日) 19:01
Re:CrystalDiskInfo 8.7.0 のソースコードについて(... G神 20/8/16(日) 19:10
Re:CrystalDiskInfo 8.7.0 のソースコードについて(... ひよひよ 20/8/16(日) 21:43

620 / 988     ←次へ | 前へ→
新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃過去ログ ┃ホーム
 93748
ページ:  ┃  記事番号:  

C-BOARD Moyuku v1.03b5