Windows Embedded 8 Standard の 32 ビット バージョンを実行する産業用パネルを持っています。ビープ音を鳴らすには内蔵スピーカーを使用する必要があります。外部スピーカーの接続はオプションではありません。
以前は、これは XP ベースの Windows Embedded Standard を実行しており、C# で Console.Beep を使用すると内部スピーカーが使用されます。ただし、Windows 8 Embedded Standard では、接続されていないにもかかわらず、代わりに外部スピーカーを使用しているようです。
内蔵スピーカーは引き続き動作します - タッチスクリーン ドライバー (eGalaxTouch) は、画面をタップすると内蔵スピーカーを使用しますが、自分のアプリケーションでこれを複製することはできません。
C# アプリケーションから次のことを試してみましたが、効果はありません。
Console.Beep()
MessageBeep() (user32.dll)
Beep() (kernel32.dll)
SystemSounds.Beep.Play()
これは Windows 7 64 ビット以降では不可能であることは理解していますが、ここでは 32 ビット OS を使用していますが、タッチスクリーンでも動作しますか?
C#/.NET でのソリューションが理想的ですが、私は他のソリューション (C/C++ など) も考えています。