Macbook pro/air 2013 late -2014 使用转接卡更换NVME SSD休眠不醒问题的解决办法

2023-05-16

 

2021年1月更新, 发现升级 big sur 11.1之后,固件版本变成了429.0.0.0, 睡眠问题又回来了,每次都睡死,不醒。 于是我按老办法,把mbp114的nvme驱动刷到mpb111的429里,刷完之后,结果,睡眠问题又解决了,真是服了苹果,搞来搞去的。办法就是用ch341a来刷,参考最下面的说明。把文件换成bigsur的nvme驱动就好了。

 

---------我是分隔线----

 

Big Sur 出来了,有网友说需要刷回原版固件版本方可升级,我试了一下,升级中间会黑屏死机重启多次, 然后刷回原版也是如此,

但是多次之后,也可以升级到Big Sur,据说下面的跟贴说,原盘的话会升到一个新的固件版本, 我确认了一下我的版本还是153.0.0.0.0, 看来是没有升级成功了,我的硬盘不是原装的,按之前的研究,这个无法升级是合理的,刷回的旧版,休眠问题回来了,mode 25 的情况下,一会就会睡死了。

搞了一个原装的APPLE的SSD, 把Firmware的版本升到了427.0.0.0.0,  休眠问题消失了,不会再睡死了,感谢苹果。

测试了2013-2014的两个MBP都是同样的结果。

据说不需要原装的SSD也有可能升级固件成功,但是不同的牌子不一样的,有机率失败,大家可以试试,欢迎留言返馈。

本文章的原来使用ch341a来夹芯片刷bios的办法可以废弃了,!!!大家只需要把固件升到427就好了!!!!!

同时已经刷过BIOS的网友,如果无法升级固件,请尝试使用编程器恢复原来的没有修改的固件。如果你没有备份的话,又无法升级的话,这个有就比较悲剧了,我也不知道怎么办了,只能试试换个ssd看看,欢迎大家留言交流。

 

 下面介绍,如何升级Bigsur的固件,不使用下面的办法,可以使用全新安装或升级,也是可以刷到固件的。

 

 

sudo /usr/sbin/bless -firmware Desktop/Big\ Sur/MBP111.scap --verbose --recovery

新的文件在安装的app的下面的目录:

先mount一下:

 Install\ macOS\ Big\ Sur.app/Contents/SharedSupport/SharedSupport.dmg.

然后可以在下面的地方找到 一个zip文件:

 /Volumes/Shared\ Support/com_apple_MobileAsset_MacSoftwareUpdate/ee3ab6c04234b360dd8fca93c0ae49f957bf0843.zip 

解开这个zip,  就得到了新的firmware了:

ee3ab6c04234b360dd8fca93c0ae49f957bf0843/AssetData/boot/EFI/EFIPayloads

我的2013 late mbp 15, 所以是MBP111.scap 

2014的mbp是 MBP112.scap 

执行上面的bless的命令,然后关机(不是重启) ,然后马上开机。

这个据说只能在原始的固件才行,修改过补丁的不行。

然后就开机的时候会看到logo和进度条,1-2分钟就可以升级完, 升级完会自动重启一下,然后就进入系统了。

 

测试了手上另一台mbp 15 2014年的,是原装的硬盘,成功把固件升级到了427.0.0.0

admin@ADMINdeMacBook-Pro ~ % sudo /usr/sbin/bless -firmware ~/Downloads/MBP112.scap --verbose --recovery 
EFI found at IODeviceTree:/efi
Will need to copy 8523776 bytes to EFI system partition
No auxiliary booter partition required
System partition found
Preferred system partition found: disk0s1
Returning booter information dictionary:
{
    "Auxiliary Partitions" =     (
    );
    "Data Partitions" =     (
        disk1s5
    );
    "Preboot Volumes" =     (
        disk1s2
    );
    "System Partitions" =     (
        disk0s1
    );
}
Mounting at /Volumes/bless.fY7x
Executing "/sbin/mount"
Returned 0
Creating /Volumes/bless.fY7x/EFI/APPLE/FIRMWARE if needed
Deleting previous contents of /Volumes/bless.fY7x/EFI/APPLE/FIRMWARE
Deleting /Volumes/bless.fY7x/EFI/APPLE/FIRMWARE/MBP112.scap (8520304 bytes)
Opened dest at /Volumes/bless.fY7x/EFI/APPLE/FIRMWARE/MBP112.scap for writing
preallocation not supported on this filesystem for /Volumes/bless.fY7x/EFI/APPLE/FIRMWARE/MBP112.scap

/Volumes/bless.fY7x/EFI/APPLE/FIRMWARE/MBP112.scap created successfully
No auxiliary booter partition required
System partition found
Preferred system partition found: disk0s1
Returning booter information dictionary:
{
    "Auxiliary Partitions" =     (
    );
    "Data Partitions" =     (
        disk1s1
    );
    "Preboot Volumes" =     (
        disk1s2
    );
    "System Partitions" =     (
        disk0s1
    );
}
Bad path for boot item: /Users/admin/Downloads/MBP112.scap
Relative path of /Volumes/bless.fY7x/EFI/APPLE/FIRMWARE/MBP112.scap is \EFI\APPLE\FIRMWARE\MBP112.scap
IOMedia disk0s1 has UUID 492ABF07-D827-447A-A506-DA52C7BCA4CF
Executing "/sbin/umount"
Returned 0
Write to RTC: 0
Setting EFI NVRAM:
{
    "efi-apple-recovery" = "<array><dict><key>IOMatch</key><dict><key>IOProviderClass</key><string>IOMedia</string><key>IOPropertyMatch</key><dict><key>UUID</key><string>492ABF07-D827-447A-A506-DA52C7BCA4CF</string></dict></dict><key>BLLastBSDName</key><string>disk0s1</string></dict><dict><key>IOEFIDevicePathType</key><string>MediaFilePath</string><key>Path</key><string>\\EFI\\APPLE\\FIRMWARE\\MBP112.scap</string></dict></array>";
}

稍后试一下非原装的升级。

新的Big sur的Macbook pro 的固件我上传了在 https://download.csdn.net/download/aerror/13119980

-----------上面这些更新于-2020.11.17------  我是分割线 ---------------以下是原文(已废弃,不建议采用),升级big sur就好了,不需要再用编程器这样修改了。 --------- 

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

1. 手上512GMBP 2013 late 差不多满了,因为穷,所以在淘宝上买了一个NVME转Macbook pcie,然后再买一个NVME 2T的硬盘

2. NVME因为需要最新的Firmware Rom支持,所以必须使用原装的硬盘(必须原装)安装Mac 14以上,我安装了14.5.要不然识别不出来新安装的NVME硬盘

3. 买之前就知道是会有休眠问题的,问了卖家推荐了一些型号说不会的,其中我是买了推荐的HP EX950 2T, 比intel足足贵了700元,结果然并卵,安装完系统测试了一下,发现也是有休眠问题的。测试办法如下:

  

pmset -a hibernatemode 25
pmset sleepnow 

   然后合上盖子,过上几分钟,发现就睡死了。根本醒不过来了。必须强行关机再开机, 确认了多次如此。 估计有人说2013 late的机子可以,可能是默认的hibernatemode 3 ,或者设置了hibernatemode 0, 要不就是插着电源。

   同时还有副作用,就是开机会黑屏过10-20秒才看到苹果和进度条,开机速度超慢。

4. 遍查了整个网络,找到了以下的资料:

Background

  • 2013-2014 MacBooks use a non-standard connector (12+16 pins) for the stock SSD that uses PCIe AHCI (OEM drives supposedly based on the Samsung XP941 or SM951)
  • Fortunately, there are a number of M.2 NVMe drives and an adapter available that allow for SSD upgrades in these MacBooks
  • macOS 10.13 “High Sierra” introduced boot support for NVMe drives that use 512 byte sectors (or LBAs) which opens up a variety of NVMe SSD upgrade options (Samsung, Intel, etc)
  • Unfortunately, the stock EFI firmware (or system ROM) in these MacBook comes with an NVMe driver that prevents the MacBook from waking up from hibernation (or deep sleep)
  • To address this hibernation issue, the system ROM can either be modified, or hibernation can be disabled on the MacBook by executing “pmset -a standby 0”
  • 2015 MacBooks can also be upgraded using this guide and do not require firmware modifications or other changes as they presumably all use PCIe NVMe SSDs (like the Samsung PM951 and newer)
  • This guide has been successfully tested with a 13” MacBook Pro Late-2013 and an 11” MacBook Air Mid-2013

      证实了,只要是2013-2014的Macbook都会有问题的,任何型号的NVME转接的SSD都有问题,没有例外,原因是固件中的NVME驱动有问题会令到无法唤醒. 

     参考URLhttps://forums.macrumors.com/threads/upgrading-2013-2014-macbook-pro-ssd-to-m-2-nvme.2034976/page-87

     解决办法也给出了,就是使用2015的固件中NVME替换2013-2014的固件驱动,GUID为51116915-C34B-4D8E-86DB-6A70F2E60DAA, 然后使用编程器去先从MX25L6406EMI这芯片读出原来的Rom, 然后从Macos的安装包找出2015的NVME替换好了,再刷回MX25L6406EMI。

    文中CH341A编程器淘宝有卖,好便宜,只需要20-30元不等,但是它是使用一个SPI to J6100 adapter,这个查了一下发现淘宝没有,只有ebay上有,韩国卖家,几百块,发货时间还要超长。。。

 

5.   既然升级系统的时候可以升级固件,那么说明使用软件来刷也是可行的,就是前几天发的文章了,

  

1. get the FirmwareUpdate.pkg file from the OS installer app's installESD.dmg
2. extract the contents using pkgutil --expand /path/to/FirmwareUpdate.pkg <path somewhere else>/FirmwareUpdate
3. in terminal, cd to the Scripts directory inside the expanded FirmwareUpdate pkg directory.
4. with Scripts as your working directory, run these 2 commands, then reboot:
sudo /usr/libexec/FirmwareUpdateLauncher -p "$PWD/Tools"
sudo /usr/libexec/efiupdater -p "$PWD/Tools/EFIPayloads"
5. at the reboot, firmware will be updated if there are any updates to be applied.

测试了一下,固件是可以刷的,但是必须满足以下所有条件:

1. 使用原装的硬盘

2. 原装的固件

3.固件版本必须大于等于当前的固件的版本

efiupdate只是把文件复制到efi分,然后设置了一些nvram的参数,然后是固件启动的时候从efi的指定地方来更新,但是很明显上面的测试表明了,这个固件的更新之前是有校验的上面三个条件都满足才给刷的,修改了的固件刷不了。

https://apple.stackexchange.com/questions/287644/do-macbooks-support-nvme-ssd-drives-via-the-use-of-a-sintech-adapter

 这里人下 Y.H. wong说

 

hat guide on MacRumors is really useful. I recently upgraded a 2014 MBPr board using most of its instructions, and it still works. Changes made: 1. No need for kapton tape. 2. I used a Sintech ST-NGFF2013-B. 3. I didn't turn off hibernation with pmset, I didn't buy a CH341A programmer either. I just looked up the MBP112 and MBP114 firmwares, transplanted the NVMe driver from MBP114 to MBP112, and flashed my Mac with /usr/libexec/efiupdater -p /path/to/EFIPayloads --force-update. Wakeup problem completely gone. – Y.H Wong Nov 4 '18 at 13:00
@Y.HWong: Sounds like the easiest way to flash the firmware. Can you tell in more detail how you proceeded? May be even join the discussion at MacRumors. Thanks a lot! – Bernhard Fürst Feb 6 at 19:20

不知道他是怎么做到的,始终无法把修改后的固件成功刷上去,有点怀疑他可能是没有测试清楚 。

 

6.  没有办法了,看到intel是有一个fpt.efi(Flash proramming tool)的,可以在Uefi的shell下执行来刷UEFI的BIOS/固件,但是只是对于PC的,工具和文档参考https://github.com/holoto/efi_shell_flash_bios/

     于是安装了refind,然后从clover那里找了一个shellx64.efi放到/EFI/tools/shell.efi下,然后下载了fpt.efi也放到这里,然后运气并不好,fpt.efi无法识别SPI的设备. 

     但是发现安装refind解决了一些问题:

      1.启动不会黑屏20秒左右了,马上就可以启动看到启动菜单,把超时设置为0的话,马上就可以看到苹果和进度条了。

     2.唤醒虽然还是有问题,但是表现有些不一样,唤醒的时候不会直接黑屏卡死,而是可以看到refind的启动菜单,然后自动重启,然后再重启开机,这个其实也还好,至少不需要手动长按关机再开机那么烦了。

       这个两个问题的解决,我认为问题应该不只是固件的问题,还和启动的efi有关系,然后翻查了一下refind的文档,发现它在原装的硬件中唤醒表现竟然是和我的机器的表现是一致的,就是唤醒变成了自动重启两次。

       新的希望又有了,看来唤醒这个只是refind没有做好,在白苹果还有一个选择就是refit这个工具,虽然很久没有更新了,但是工作方式有些不同,它是直接安装在系统盘的根目录的,而不是EFI的分区中,也没有使用nvram的变量。 据查在白苹里使用它是没有休眼唤醒的问题的。于是把refind删除了,安装了refit,  然而也是没有走到狗屎运. :(

7. 好好的查了一下mx25L6406EMI-12G的datasheet, 知道它是8 SOP封装的,问了做硬件的朋友,他说其实可以焊几条线来用刷,但是不想动手电烙铁,上次拆硬盘的bios是拆得满头大汗,折腾许久,最后竟然还没有成功,所以有点信心不足. 于是在淘宝上再试试找那个连接线,也是没有找到,但是发现有一个sop 8的夹子,研究一下买家的评论图片,都是用来刷路由器,刷笔记本的,看来是一个可行,价格便宜又可以快速达成的办法。 于是拍了ch341a+夹子+一堆转接1.8v之类的一整套回来,花了50元左右,第二天就收到了。

8. 买ch341a没有说明书, 我汗,看到有一个跳线写着3.3V5V的,从https://static6.arrow.com/aropdfconversion/cb5c77c505104f4e4cad1b3667abe88327b4ee44/mx25l6406e203v2064mb20v1.9.pdf

先下载datasheet确认了这个mx25L6406EMI是3.3V的,然后小心翼翼用万用表量了一个8号脚是3.3V的, 然后把跳线插在编程那个两个脚上(板上好在有提示),

夹子夹了第一次没有夹好,读不出来,夹第二次好了,测试一下,可以读, 一切正常, 两个红灯都亮起来了,如图:

 

 

按上面的https://forums.macrumors.com/threads/upgrading-2013-2014-macbook-pro-ssd-to-m-2-nvme.2034976/page-87

一步一步都做,最后成功刷入固件。 开机问题好了,使用pmset -a hibernatemode 25来测试,唤醒问题也好了。

一切完美解决。

 

应要求补充一下翻译过来的操作步骤:

1. 打开后盖,主板上找mx25L6406EMI-12G这个芯片,是8只脚的,写了mx25L6406EMI这些字在上面的, 照图夹好BIOS, 红线对齐第一只脚(芯片上有一个圆点标记的)

 

2. 安装flash rom 工具,使用brew安装 

   

 brew install flashrom  

3. 开始读出原来的 bios ROM ,这个大小是8M的。输入以下命令:

 

flashrom -p ch341a_spi -r dump1.bin -c "MX25L6406E/MX25L6408E"

保险起见,执行3次,每次改改名,如下:

flashrom -p ch341a_spi -r dump2.bin -c "MX25L6406E/MX25L6408E"
flashrom -p ch341a_spi -r dump3.bin -c "MX25L6406E/MX25L6408E"

然后可以md5看看hash是不是一致的

 

md5 *.bin

要是读不出,或者是三次不一致,应该是没有夹好,重新夹一下。

在读数据的时候,这个ch341a的红灯会亮起来

 

4. 从升级/安装包解压出2015的MBP固件中的NVME驱动

    2013-2014 MacBook Pro (MacBookPro11,1),  用MacBookPro11,4 的 firmware

    2013-2014 MacBook Air (MacBookAir6,1),用 MacBookAir7,1的 firmware

 

 4.1 双击装载 InstallESD.dmg , 在macOS安装包的Contents/SharedSupport目录下.

    4.2 在InstallESD.dmg image, 找到 Packages/FirmwareUpdate.pkg 这个安装包

 

   4.3 用Pacifist或The Archive Browser 打开 the FirmwareUpdate.pkg 

 4.4 打开Scripts

  

4.5  从Tools/EFIPayloads 这里解压合适的firmware. 

MBA71_0177_B00.fd  是2015 MacBook Air   

MBP114_0183_B00.fd  是 2015 MacBook Pro

  4.6 上面的操作使用命令行也是可以,我是使用命令行来操作的

  

xar -x Packages/FirmwareUpdate.pkg
cat Scripts | cpio -i 

5. 修改dump1.bin 中的NVME驱动

    5.1 用UEFITool 打开2015的固件,找到这个驱动,有查找菜单的,找GUID为 51116915-C34B-4D8E-86DB-6A70F2E60DAA 的就是了。   

5.2 右键  “Extract as is…” 把2015的驱动保存下来.

5.3 使用5.2这时保存下来的驱动去替换dump下来的rom里的nvme驱动,也是定位那个GUID,然后右键 "replace aS IS ...."

5.4 替换的动作可以在UEFITool的界面如下图看到,保存这个文件为MBA71_0117_B00-Mod.rom ,

5.5 可以再次打开这个修改后的文件,可以对比一下这个rom的驱动和2015的firmware中的驱动的信息是不是一致的。

如果一致的,那么你这一步成功修改了你机器定制的rom了。

 

6. 使用flashrom 把修改后的rom写入bios芯片里, flashrom写完之后会自己校验的。

 flashrom -p ch341a_spi -w MBA71_0117_B00-Mod.rom -c "MX25L6406E/MX25L6408E"

 

写完之后,拔出USB的ch341a编程,夹子松开移走,开机,应该一切都是完美的了,可以看到开机马上就看到进度条了,而不是原来的卡上个几十秒,可以使用上面说的方法测试休眠唤醒。

祝好运.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Macbook pro/air 2013 late -2014 使用转接卡更换NVME SSD休眠不醒问题的解决办法 的相关文章

  • 检测 Mac 上 AIR 应用程序中的不同退出选项

    我有一个在 Mac 上运行的 AIR 应用程序 并且我希望在有人 关闭 应用程序 例如点击红色 x 按钮或 cmd w 时隐藏窗口 但是 如果有人点击 cmd q 或从扩展坞上下文菜单或顶级菜单中选择 退出 我希望应用程序真正关闭 我可以阻
  • 为什么在文件未完成加载时调度 URLStream 完成事件?

    我正在编写一个 AIR kiosk 应用程序 每天晚上都会连接到 WordPress 服务器 获取包含所有内容路径的 JSON 文件 然后下载该内容并将其保存到 kiosk 硬盘驱动器 有数百个文件 jpg png f4v xml 其中大多
  • Adobe AIR 和 iPhone - 工作原理如何?

    有人知道 Adob e AIR 应用程序如何转换为 iPhone 应用程序吗 我看到两种方法 要么 Adob e AIR 虚拟机必须成为每个应用程序的一部分 要么必须以某种方式将所有 ActionScript 调用转换为 Cocoa Tou
  • 您可以从 Adob​​e Air 访问 Windows 注册表吗?

    y N 编辑 只读访问权限就可以了 我还没有尝试过 但我想我已经找到了解决方法 Adobe AIR 无法写入 Windows 注册表 但您可以在 AIR 2 中启动本机进程 以下博客文章展示了如何执行此操作 http www adobe c
  • 如何在 Android/Black berry 的 Air 中打开 pdf

    我想在 Android Black berry 的 Air 中打开 pdf 我怎么做到这一点 我使用AIR 2 6 IDE是Flash Builder 4 5 StageWebView http help adobe com en US a
  • 从 Air 在“新窗口”中打开另一个 Android 应用程序

    这是一个little涉及 所以请耐心等待 我有两个 Android 应用程序 一个是 Adob e Air 内置的 启动器 另一个是从 google play 商店下载的 目标 在某个时刻 我希望 启动器 打开 目 标 并切换到它 目前我正
  • Adobe Air FileStream 错误 #3013:文件或目录正在使用中

    在谷歌和这里进行了搜索写入文件时抛出错误 3013 Adob e AIR https stackoverflow com questions 8588493 an error 3013 thrown when writing a file
  • 类似 Prezi 的网络界面。 Flash 还是 HTML5?

    我想编写一个用户体验类似于 Prezi com 的 Web 界面 为此目的最好的技术是什么 项目要求 快速实施 这是一个演示 我希望有一个粗略的估计 大量数据 需要动态内容加载 卸载 我的自然选择是 Flash 和 HTML5 Prezi
  • URL 检测 adobe air 桌面小部件

    我是 Adob e Air 的新手 我需要 紧急 使用 Adob e Air 制作一个小部件 用于监视我导航的 URL 当我进入特定站点时 该小部件会出现在我的屏幕前面并显示信息 问题是我不知道如何使用 Adob e air flash 监
  • 适用于 Android 的 Adob​​e AIR 上的无引脚 OAuth

    我在 Adob e AIR for Desktop iOS 上使用了无引脚 OAuth 但在 Android 上则不行 由于某种原因 我们没有得到 oauth verifier 其中包含 Android 设备上 StageWebView 中
  • 如何在 AIR Android 应用程序中的 JS 和 AS3 之间进行通信?

    我正在使用ExternalInterface 但我以前从未使用过它 所以我不知道到底该怎么做 我什至不知道ExternalInterface是否适用于AIR Android 我正在尝试实现 JS Google Maps API 此时我可以使
  • 数据库架构更新

    我正在开发一个使用本地 SQLite 数据库的 AIR 应用程序 并且想知道在分发新版本的应用程序时如何管理数据库架构更新 还考虑跳过某些版本的更新 例如 不是从 1 0 到 1 1 而是从 1 0 到 1 5 您会推荐什么技术 对于 SQ
  • Adobe AIR HTML 组件 - socket.io

    我正在尝试在 HTML 组件中加载一个网站 该组件使用 socket io 来获取一些流信息 它在 AIR 之外运行得很好 但在 HTML 组件内时 流式传输无法运行 它是从自身以外的域进行流式传输 我无法控制这两个站点 关于如何让流在 H
  • as3 AIR for android - 应用程序沙箱内容错误

    目标 我试图允许外部加载的 swf 文件与从设备本地加载的文件相互通信 我需要能够访问变量 函数和对象 我在从网上加载 swf 内容时已经实现了这一点 as3 从网络外部加载的swf 控制从网络外部加载的swf https stackove
  • 在 Kindle Fire 上调试 Adob​​e AIR 应用程序

    可能的 我认为要做到这一点 我需要将 Fire 上的 AIR 运行时升级到 3 但应用商店中的版本无法安装 据我所知 我无法创建既是强制运行时又是调试的 AIR apk 因此应用程序的调试版本必须在安装的 AIR 运行时上运行 由于 Fir
  • 如何通过http打开远程sqlite数据库?

    是否可以通过 http 打开 sqlite 文件 我只需要读取数据库 并希望我可以做类似的事情 var dbFile File new File http 10 1 1 50 project db sqlite sqlConnection
  • AIR/Actionscript 中没有这样的表 SQLITE_SEQUENCE

    我正在尝试使用 AIR ActionScript Flex 4 5 重置 SQLITE 中自动增量字段的种子 我正在做通常应该有效的事情 DELETE FROM SQLITE SEQUENCE WHERE NAME myTable 我已经检
  • 如何在Android Air应用程序中通过as3打开Instagram页面?

    我想通过单击应用程序中的按钮来打开 Instagram 页面 例如 Instagram 应用程序中的 instagram mypage 代码是什么 mybuttun addEventListener MouseEvent CLICK ope
  • Adobe Air Mobile 为什么启动视频 stageVideo 时舞台会闪烁?

    我正在尝试使用 stageVideo 在 Android 平板电脑上播放视频 但每当我单击播放并将视频添加到舞台时 孔应用程序都会闪烁 然后视频会添加到舞台 然后视频开始全部像素化 然后它消失并开始正常播放 只需跳跃几次 我想知道什么情况会
  • 在 Mac OS X (Mavericks) 上的 Adob​​e AIR 中的两台显示器上显示两个全屏窗口

    我使用的是 Mac OS X Mavericks 使用 Adob e AIR 我想在两个显示器 内置笔记本电脑视网膜显示器和外部 HDMI 显示器 上分别显示单独的全屏窗口 我可以在主显示器上获得全屏窗口 在辅助显示器上获得几乎全屏的窗口

随机推荐

  • 关于c语言中printf的几个问题

    问题在执行下列代码时发现的 int main int a 61 1 float b 61 1 0 float c 61 a 10 printf 34 d 34 int b printf 34 d 34 b 问题一 为什么不一样啊 用 d输出
  • 北斗定位与GPS定位的区别

    欢迎来到东用小知识课堂 xff0c 每天学习一分钟 xff0c 让你紧跟时代 xff0c 扩充自己 xff0c 成为大佬不是梦 xff01 1 覆盖范围 xff1a 北斗定位系统是覆盖中国本土的区域导航系统 覆盖范围东经约70 一140 x
  • 污水处理远程监控系统解决方案

    一 行业背景 随着我国科技和经济的发展 xff0c 近年来工厂数量日益增多 xff0c 而生产所带来的工业垃圾及污水就是一个重要的环境污染问题 xff0c 部分工厂甚至会在监管部门的监控死角下偷偷进行污水排放 xff0c 对周围水质造成严重
  • 5G工业路由器安全性怎么样?工业路由器的特点

    路由器 xff0c 本身就是一个具有相当大潜力的网络通信设备 xff0c 即使再是网络小白的用户 xff0c 可能也知道路由器是家中用于发布无线网络的设备 xff0c 如果深入了解的话 xff0c 其作用和发展会让人大为感慨 相信很多用户也
  • 路由器有防火墙?工业路由器的那些安全防护

    想要网络安全光是电脑装了杀毒软件可不行 xff0c 如果一个企业或者大型工厂一旦因为网络防护疏忽 xff0c 那么丢失数据信息所造成的损失是无法估量的 xff0c 所以企业及工厂网络通信及数据传输所使用的路由器一般都是工业级的 xff0c
  • Cat.1和Cat.4有哪些区别

    Cat 1的全称为LTE UE Category 1 xff0c 它是4G LTE网络的一个类 xff0c 也可以理解为低配的4G终端 xff0c 属于广域网 xff0c 蜂窝联网 xff0c 上行峰值为5Mbit s xff0c 下行峰值
  • RS485接口连接设备数量总共有多少?

    RS485总线可以连接256个设备 xff0c 但测试后发现这个数字有比较大的差异 有一种说法认为专门开发串行嵌入式的RS485总线只能连接32个节点 xff0c 这由自身的驱动能力决定的 有人说网上的各种485总线产品可以支持128个 x
  • 预防山体滑坡,泥石流监测智能预警系统

    一 行业背景 我国是一个山区面积较大的国家 xff0c 山地 丘陵约占国土总面积的2 3 xff0c 在众多的山区中 xff0c 都具备泥石流形成的基本条件 xff0c 这也让我国成为受泥石流灾害影响最大的国家 在我国境内 xff0c 泥石
  • 如何扩大无线网络信号强度?

    欢迎来到东用小知识课堂 xff0c 每天学习一分钟 xff0c 让你紧跟时代 xff0c 扩充自己 xff0c 成为大佬不是梦 xff01 无线网络通信设备存在一个问题 xff0c 那就是他的信号发射都是直线型 xff0c 因此一旦家中或者
  • OpenWrt 添加cpu温度显示监控

    opkg update opkg install lm sensors lm sensors detect 然后修改一下 usr lib lua luci view admin status index htm 增加一个温度的显示 lt C
  • RS485接线方式小科普

    欢迎来到东用知识小课堂 xff01 RS 485采用平衡发送和差分接收方式实现通信 xff1a 发送端将串行口的ttl电平信号转换成差分信号a xff0c b两路输出 xff0c 经过线缆传输之后在接收端将差分信号还原成ttl电平信号 RS
  • 传输数据稳如老狗,还支持多种接口,这款DTU让智能化更简单

    如果你的项目正在向着智慧化转变或发展 xff0c 那么你一定会深刻意识到数据传输的稳定性对于整个系统的稳定运行的重要性 毕竟 xff0c 项目的智能化发展需要时刻保持数据的可靠性和稳定传输 xff0c 如果一旦传输因设备或者网络等因素导致中
  • 什么是光耦隔离?光耦隔离的主要作用

    欢迎来到东用知识小课堂 xff01 光耦合器的结构相当于把发光二极管和光敏三极管封装在一起 光耦隔离电路使被隔离的两部分电路之间没有电的直接连接 xff0c 主要是防止因有电的连接而引起的干扰 xff0c 特别是低压的控制电路与外部高压电路
  • ORB305与CISCO路由器构建L2TP over IPSec VPN操作手册

    1 网络拓扑 在思科路由器与ORB305之间建立一个安全隧道 xff0c 对客户路由器端设备子网 xff0c 与思科路由器端服务器子网之间的数据流进行安全保护 xff0c 组网拓扑图如图所示 2 思科路由器端配置指导 此处以多数客户使用专线
  • linux下使用UDP发送接收数据

    接收 static int sock fd struct sockaddr in recv addr 读取参数 struct sockaddr in send addr 发送参数 sock fd 61 socket AF INET SOCK
  • 0长度数组的使用,重点掌握的知识

    0长度的数组在ISO C和C 43 43 的规格说明书中是不允许的 xff0c 但是GCC的C99支持的这种用法 GCC对0长度数组的文档参考 xff1a Arrays of Length Zero 如下代码片段 xff0c 哪个更简洁更灵
  • Freertos中检测内存的剩余函数

    static uint16 t prvTaskCheckFreeStackSpace const uint8 t pucStackByte
  • 重定位

    一 必须知道的几个概念 1 链接地址和运行地址 运行地址 xff0c 顾名思义就是程序运行的时候的地址 xff0c 也就是你用工具将代码下载到RAM的那个地址 xff0c 也叫加载地址 链接地址 xff0c 由链接脚本指定的地址 为什么需要
  • CC2541低功耗的实现方法

    转自 xff1a http blog csdn net mzy202 article details 42091537 CC2541 CC2540 实现超低功耗是非常重要的 xff1a 我们来总结一下实现方法 xff1a 1 xff0c 有
  • Macbook pro/air 2013 late -2014 使用转接卡更换NVME SSD休眠不醒问题的解决办法

    2021年1月更新 xff0c 发现升级 big sur 11 1之后 xff0c 固件版本变成了429 0 0 0 睡眠问题又回来了 xff0c 每次都睡死 xff0c 不醒 于是我按老办法 xff0c 把mbp114的nvme驱动刷到m