if
Windows モバイル スマート デバイスから OEM 番号を取得しており、戻り値をステートメントで使用する方法を見つけようとしています。
以下は、値を返すために使用するコードです。OEM 番号が常に 86.09.0008 であることを確認したいのですが、そうでない場合はお知らせください。
class oem
{
const string OEM_VERSION = "OEMVersion";
private const int SPI_GETOEMINFO = 258;
private const int MAX_OEM_NAME_LENGTH = 128;
private const int WCHAR_SIZE = 2;
[DllImport("coreDLL.dll")]
public static extern int SystemParametersInfo(int uiAction, int uiParam, string pBuf, int fWinIni);
[DllImport("CAD.dll")]
public static extern int CAD_GetOemVersionNumber(ref System.UInt16 lpwMajor, ref System.UInt16 lpwMinor);
public string getOEMVersion()
{
System.UInt16 nMajor = 0;
System.UInt16 nMinor = 0;
uint nBuild = 0;
int status = CAD_GetOemVersionNumber(ref nMajor, ref nMinor);
if (((System.Convert.ToBoolean(status))))
{
string sMajor = String.Format("{0:00}", nMajor); //in 2-digits
string sMinor = String.Format("{0:00}", nMinor); //in 2-digits
string sBuild = String.Format("{0:0000}", nBuild); //in 4-digits
return (sMajor + "." + sMinor + "." + sBuild);
}
else // failed
{
return ("00.00.0000");
}
私はメインフォームからこれを次のように呼び出しています:
label1.Text = oemver.getOEMVersion();