これは私が最近抱え始めた奇妙な問題です。私のチームは COTS アプリケーションを開発しており、数人がコードを担当しています。数週間前、デバッグ (およびコンパイル済みの EXE の実行) を試みたときに、次のエラー メッセージが表示されました。
「Windows は、指定されたデバイス、パス、またはファイルにアクセスできません。アイテムにアクセスするための適切な権限がない可能性があります。」
結局、このコード スニペットをリファクタリングする必要がありました。
mcolSchedulesNeedingOverride(New Guid(lstrErrorParts(0))) &= vbNewLine & lstrErrorParts(2)
これに:
Dim lguidKey As New Guid(lstrErrorParts(0))
Dim lstrErrorMsg As String = mcolSchedulesNeedingOverride(lguidKey)
lstrErrorMsg &= vbNewLine & lstrErrorParts(2)
mcolSchedulesNeedingOverride(lguidKey) = lstrErrorMsg
これにより、VS は実際に機能する EXE を生成することができました。理由はよくわかりませんが、うまくいきました。どのアセンブリに問題があるかを特定するために、peverify ユーティリティを使用しました。
昨日約25個のファイルが更新された後、別のコードブランチで同じ問題が発生しました。これは追跡するのが楽しくないので、誰かがなぜこれが起こっているのかについての洞察を提供してくれることを望んでいました.
peverify は、すべてのアセンブリが正しいことを示していますが、System.Windows.Forms.dll に対して 90 以上のエラーを吐き出しています!
誰にもヒントはありますか?