vb.netからWindowsのコマンド起動して(PowerShell等)でformatでなくDVDのデータを消去したいがWindows10のコマンドでできないですか?

masami kusumoro 60 評価のポイント
2024-03-19T00:32:06.91+00:00

vb.netからWindowsのコマンド起動して(PowerShell等)でformatでなくDVDのデータを消去したいがWindows10のコマンドでできないですか?

Windows10の画面からは、エクスプローラーからDVDディスクを挿入したドライブ名を右クリックし、表示された一覧から「このディスクを消去する」の機能です。018662i_20210511044742838

ビジネス向け Windows | Windows Server | ユーザー エクスペリエンス | PowerShell
ビジネス向け Windows | IT プロフェッショナル用 Windows クライアント | ユーザー エクスペリエンス | その他
開発者テクノロジ | .NET | その他
開発者テクノロジ | .NET | その他

.NET ソフトウェア フレームワークに基づく Microsoft テクノロジ。 特定のカテゴリに適合しないその他のトピック。

開発者テクノロジ | VB
開発者テクノロジ | VB

Microsoft が開発した、.NET で使用できるオブジェクト指向のプログラミング言語。

0 件のコメント コメントはありません

1 件の回答

並べ替え方法: 最も役に立つ
  1. Raina Zhao - MSFT 2,890 評価のポイント Microsoft 外部スタッフ
    2024-03-19T06:48:58.1266667+00:00

    masami kusumoroさん、こんにちは。

    Microsoft Q&A フォーラムにご投稿くださいましてありがとうございます。

    IMAPI2 ライブラリの IDiscFormat2Erase インターフェイスを使用して、DVDのデータを消去することができます。

    以下のコードを参照してください。

    1. IDiscFormat2Erase インターフェイスとその GUID を定義する。
    2. MsftDiscFormat2Erase クラスを定義して、IDiscFormat2Erase インターフェイスを実装する。
    3. MsftDiscFormat2Eraseで IDiscFormat2Erase のインスタンスを作成する。
    4. インターフェイス インスタンスで EraseMedia メソッドを呼び出して、DVD パスをパラメーターとして渡します。

    Imports System.Runtime.InteropServices

    Public Class Form1

    ' 定数の定義

    Private Const S_OK As Integer = &H0

    Private Const STG_E_MEDIUMFULL As Integer = &H80030070

    ' GUID の定義

    Private Class IID_IDiscFormat2Erase

    Public Const IID As String = "27354130-7F64-5B0F-8F00-5D77AFBE261E"

    End Class

    ' インターフェイスの定義

    <ComImport, InterfaceType(ComInterfaceType.InterfaceIsIUnknown), Guid(IID_IDiscFormat2Erase.IID)>

    Private Interface IDiscFormat2Erase

    Sub EraseMedia(<[In], MarshalAs(UnmanagedType.BStr)> ByVal recorderPath As String)

    End Interface

    ' インタフェースを実装するクラスを定義する

    <ComImport, ClassInterface(ClassInterfaceType.None), Guid(IID_IDiscFormat2Erase.IID)>

    Private Class MsftDiscFormat2Erase

    End Class

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

    Dim format2Erase As IDiscFormat2Erase = New MsftDiscFormat2Erase()

    ' 「D:」を適切なDVDドライブパスに入れ替える

    Dim recorderPath As String = "\\.\D:"

    Try

    format2Erase.EraseMedia(recorderPath)

    MessageBox.Show("DVD erased successfully.")

    Catch ex As Exception

    MessageBox.Show("DVD erase failed: " & ex.Message)

    End Try

    End Sub

    End Class

    どうぞよろしくお願いします。


    役に立った回答には「回答を受け入れる」と「いいね!」を押してください。さらに質問がある場合は、「コメント」を追加してください。注意:Q&Aからメール通知を受け取りたい場合には、ドキュメントの手順に基づき、メール通知を有効にしてください。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません

お客様の回答

質問作成者は回答に "承認済み"、モデレーターは "推奨" とマークできます。これにより、ユーザーは作成者の問題が回答によって解決したことを把握できます。