掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
文字化けを防止するには?? (ID:49261)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
下記のプログラムでプロダクトIDを取得してパスワードを作成してい ましたが、Windouws10では、更新の度にプロダクトIDが変わるようで、 パスワードの変更が相次いでいます。 このプログラムは2種類のアプリに使っていて、今回3番目のアプリに 組み込みましたが、 Edit1.text:=GetWindowsProductId; として使用したら、文字化けを起こしました。 他の2つのアプリでも、新しくコンパイルすると同様の文字化けを起こ します。 何が悪いのか、分かる人がいたら教えてほしいのですが?? XE5で、win8とwin10で両方で文字化けが起こります。 よろしくお願いします。 function GetWindowsProductId: string; var VerInfo: TOSVersionInfo; SubKey: string; hReg: HKEY; PValue: PByte; DataType, DataSize: DWORD; m:string; begin // *************************************************** バージョンの取得 ** VerInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo); GetVersionEx(VerInfo); // ***************************** レジストリのプロダクトID記録位置を取得 ** if VerInfo.dwPlatformId = VER_PLATFORM_WIN32_NT then SubKey := 'SOFTWARE\Microsoft\Windows NT\CurrentVersion' else SubKey := 'SOFTWARE\Microsoft\Windows\CurrentVersion'; // *********************************** レジストリからプロダクトIDを取得 ** // ================================================= レジストリオープン == RegOpenKeyEx(HKEY_LOCAL_MACHINE, PChar(SubKey), 0, KEY_READ, hReg); // =========================================================== 値の取得 == GetMem(PValue,255); try DataType := REG_SZ; DataSize := 255; RegQueryValueEx(hReg, 'ProductId', nil, @DataType, PValue, @DataSize); // ------------------------------------------ 取得した値をEdit1に設定 m:= PChar(PValue); finally FreeMem(PValue); end; // ================================================= レジストリクローズ == RegCloseKey(hReg); result:=m; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.