0

デバイス マネージャー情報のサンプル コードを見つけたので、txt ファイルに書き込もうとしましたが、動作しません。

この問題の根本的な原因がわかりません。

以下のリンクは元のサンプルコードです。 http://white5168.blogspot.com/2013/05/drivercmgetdevnodestatus.html#.W1FLpdIzaM9

以下のコードは私が追加した場所です。チェックにご協力ください。

                while (!SetupDiGetDeviceRegistryProperty(hDevInfo,
                    &DeviceInfoData,
                    ucSPDRP[j],
                    &DataType,
                    (PBYTE)Buffer,
                    BufferSize,
                    &BufferSize)) {
                    if (GetLastError() == ERROR_INSUFFICIENT_BUFFER)
                    {
                        // Change the buffer size.
                        if (Buffer) LocalFree(Buffer);
                        Buffer = (LPSTR)LocalAlloc(LPTR, BufferSize * 2);
                    }
                    else
                        break;// Insert error handling here.
                }


                    file << cStatus[j];
                    file << (const char *)Buffer << "\n";
                    file.flush();

                }
                printf("%s : %s\n", cStatus[j], (const char *)Buffer);
                if (Buffer) LocalFree(Buffer);
4

0 に答える 0