title | date | updated |
---|---|---|
WINDOWS/MSVC 所遇到奇葩问题集锦 |
2023-05-01 05:22:28 -0700 |
2023-06-01 08:15:28 -0700 |
[toc]
-
如何设置安装 Visual Studio Install 使用英文语言运行?
[解] 程序运行后添加
--locale en-US
即可 -
QString
转char *
莫名其妙会失败?!!![解] 转换分为两步来完成一定没有问题,但是一步直接到, MSVC 下会偶尔有问题
在 https://github.com/feiyangqingyun/qtkaifajingyan 的 185 条已总结,同遇到和排查出来,真滴是血的教训,操操操
QString text = "xxxxx"; //下面这样转换很可能会有问题 char *data = text.toUtf8().data(); //分两步转换肯定不会有问题 QByteArray buffer = text.toUtf8(); char *data = buffer.data(); const char *data = buffer.constData();
-
微软 SDK 导致的项目编译失败哦~ [解]
-
Win10的20H2使用VS2019,拖曳窗口会崩溃!!! [解]
-
VS2019调试Qt5时QString显示为内存地址而非字符串!!! [解]
-
一个微软自带的 Notepad 所导致的问题,回车符(CR)和换行符(LF)。 [解]
-
Visual Studio 断点调试之箭头偏移进错函数,捉虫记 [解]
-
Qt Creator(Qt 15.2) 使用 MinGW 则会编译成功,改用 MSVC 2022 却编译失败!!!
-
Qt Creator(Qt 15.2) 使用 MinGW 终端的中文不会乱码,改用 MSVC 2022 却中文乱码
[解] 某些中文注释会导致编译失败 (操!!!),CMake 中设置 utf-8
MSVC 的 .h.cpp 都采用 UTF8-BOM 格式。同时可参考 8 条
# 采用 MSVC 终端上的中文不乱码 if (MSVC) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /utf-8") add_compile_options(/source-charset:utf-8 /execution-charset:utf-8) // 根据实际可注释 endif()
-
Qt 5.15 获取音频的输入输出,使用 MinGW 则会编译仅仅会获取一份,改用 MSVC 2022 却编译却会获得信息重复
[解] 详细参数确实有不同,如何去重的方法还在寻找中。 已解决,手动写了一个算法进行去重。
MSVC 和 MinGW 的又一个不相同,哔了狗
【问题源码和打印显示】 // 获取音频输入设备列表 QList inputDevices = QAudioDeviceInfo::availableDevices(QAudio::AudioInput); qDebug() << "音频输入设备列表:"; for (const QAudioDeviceInfo& deviceInfo : inputDevices) { qDebug() << "设备名称:" << deviceInfo.deviceName(); qDebug() << "支持的采样率:" << deviceInfo.supportedSampleRates(); qDebug() << "支持的声道数:" << deviceInfo.supportedChannelCounts(); qDebug() << "支持的采样大小:" << deviceInfo.supportedSampleSizes(); qDebug() << "支持的编码格式:" << deviceInfo.supportedCodecs(); qDebug() << "-------------------------------------"; } // 获取音频输出设备列表 QList outputDevices = QAudioDeviceInfo::availableDevices(QAudio::AudioOutput); qDebug() << "音频输出设备列表:"; for (const QAudioDeviceInfo& deviceInfo : outputDevices) { qDebug() << "设备名称:" << deviceInfo.deviceName(); qDebug() << "支持的采样率:" << deviceInfo.supportedSampleRates(); qDebug() << "支持的声道数:" << deviceInfo.supportedChannelCounts(); qDebug() << "支持的采样大小:" << deviceInfo.supportedSampleSizes(); qDebug() << "支持的编码格式:" << deviceInfo.supportedCodecs(); qDebug() << "-------------------------------------"; } 🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣 ***********************************MSVC 编译器输出*********************************** [debug] m_microphoneDevices设备名称: "麦克风阵列 (适用于数字麦克风的英特尔? 智音技术)" [debug] 支持的采样率: (8000, 11025, 16000, 22050, 32000, 44100, 48000, 88200, 96000, 192000) [debug] 支持的声道数: (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18) [debug] 支持的采样大小: (8, 16, 24, 32, 48, 64) [debug] 支持的编码格式: ("audio/pcm") [debug] ------------------------------------- [debug] m_microphoneDevices设备名称: "麦克风阵列 (适用于数字麦克风的英特尔? 智音技术)" [debug] 支持的采样率: () [debug] 支持的声道数: (1, 2) [debug] 支持的采样大小: () [debug] 支持的编码格式: ("audio/pcm") [debug] ------------------------------------- [debug] m_speakerDevices 设备名称: "扬声器 (Realtek(R) Audio)" [debug] 支持的采样率: (8000, 11025, 16000, 22050, 32000, 44100, 48000, 88200, 96000, 192000) [debug] 支持的声道数: (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18) [debug] 支持的采样大小: (8, 16, 24, 32, 48, 64) [debug] 支持的编码格式: ("audio/pcm") [debug] ------------------------------------- [debug] m_speakerDevices 设备名称: "P27q-30 (NVIDIA High Definition Audio)" [debug] 支持的采样率: (8000, 11025, 16000, 22050, 32000, 44100, 48000, 88200, 96000, 192000) [debug] 支持的声道数: (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18) [debug] 支持的采样大小: (8, 16, 24, 32, 48, 64) [debug] 支持的编码格式: ("audio/pcm") [debug] ------------------------------------- [debug] m_speakerDevices 设备名称: "P27q-30 (NVIDIA High Definition Audio)" [debug] 支持的采样率: (48000) [debug] 支持的声道数: (2) [debug] 支持的采样大小: (8, 16, 24, 32, 64) [debug] 支持的编码格式: ("audio/pcm") [debug] ------------------------------------- [debug] m_speakerDevices 设备名称: "扬声器 (Realtek(R) Audio)" [debug] 支持的采样率: (48000) [debug] 支持的声道数: (2) [debug] 支持的采样大小: (8, 16, 24, 32, 64) [debug] 支持的编码格式: ("audio/pcm") [debug] ------------------------------------- 🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣 ***********************************MinGW 编译器输出*********************************** [debug] m_microphoneDevices设备名称: "麦克风阵列 (适用于数字麦克风的英特尔? 智音技术)" [debug] 支持的采样率: (8000, 11025, 16000, 22050, 32000, 44100, 48000, 88200, 96000, 192000) [debug] 支持的声道数: (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18) [debug] 支持的采样大小: (8, 16, 24, 32, 48, 64) [debug] 支持的编码格式: ("audio/pcm") [debug] ------------------------------------- [debug] m_speakerDevices 设备名称: "扬声器 (Realtek(R) Audio)" [debug] 支持的采样率: (8000, 11025, 16000, 22050, 32000, 44100, 48000, 88200, 96000, 192000) [debug] 支持的声道数: (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18) [debug] 支持的采样大小: (8, 16, 24, 32, 48, 64) [debug] 支持的编码格式: ("audio/pcm") [debug] ------------------------------------- [debug] m_speakerDevices 设备名称: "P27q-30 (NVIDIA High Definition Audio)" [debug] 支持的采样率: (8000, 11025, 16000, 22050, 32000, 44100, 48000, 88200, 96000, 192000) [debug] 支持的声道数: (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18) [debug] 支持的采样大小: (8, 16, 24, 32, 48, 64) [debug] 支持的编码格式: ("audio/pcm") [debug] ------------------------------------- 🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣🤣 【解决方案】还在找中,或者看如何去重
-
xxx
-
Teams 始终无法登录,提示如图:我们无法连接到你。 HTTP 404 login.micsoftonline.com
-
Office 365 企业版,无法登录账号
[解] 关掉系统代理(代理直连也不行,必须要关掉),ref1 评论
-
重装系统后,自动更新后,托盘的喇叭🔈图标错误,且无法打开
[解] 运行命令如下,亲测可用
参考 https://blog.csdn.net/Bigotry_1/article/details/121957884
1.首先按下“win+R”打开运行的窗口,点击输入命令“cmd”,并以管理员身份进入 2.然后在弹出来的窗口中点击输入“DISM.exe /Online /Cleanup-image /Scanhealth”,回车确定扫描映像是否完整 3.然后完成后再检测映像,输入:DISM.exe /Online /Cleanup-image /Checkhealth。 4.然后再修复映像,输入:DISM.exe /Online /Cleanup-image /Restorehealth。 5.最后检查系统并修复:sfc /scannow。 6.重启电脑,然后就完成了
-
GitHub 的 Action 的脚本,构建 CI/CD,使用的默认 shell 壳: pwd 默认是不使用 utf8 字符
[解] 使用的默认 shell 壳: pwd 默认是不使用 utf8 字符
使用的命令参数
${{ env.xxxx }} ${{env.xxxx}} ${{env:xxxx}} ${env.xxxx} $xxxx 然后参数要注意;使用 "" 或者 '' 学会去看一些公共的库;直接去看最新的文档之类
-
xxx