Chrome提示:"请停用以开发者模式运行的扩展程序"的解决办法

最近不知道安装了什么插件导致没有chrome浏览器打开时都会提示“请停用以开发者模式运行的扩展程序”的提示,只有每次点击取消之后才能正常使用扩展。如下图所示

每次都要去手动把这个关掉,我都快要吐了。。。在http://www.cnplugins.com/tool/stop-developer-mode.html 找到了方法。我用的是第2中方法,留着万一以后还要用呢。

一、通过组策略添加扩展程序白名单的方式屏蔽了这种提示。(注意:此方法仅适用windows系统)

1. 首先下载Chrome组策略管理模板 :下载地址:http://chromecj.com/utilities/2015-04/423/download.html

2. 开始 -> 运行 -> 输入gpedit.msc -> 回车确定打开计算机本地组策略编辑器(通过Win + R快捷键可以快速打开运行),如图所示:

3.然后打开“本地组策略编辑器”,在左侧的树形菜单中,依次展开:计算机配置->管理模版,在“计算机配置”-“管理模板”中右键选择“添加/删除模板”安装刚才的那个chrome.adm文件,安装成功之后就可以在“管理模板”-“经典管理模板(ADM)”-“Google”下面看到“Google Chrome”了。这里需要说明两点,一是这个下面可能会有两个Google Chrome,一个有推荐字样,看看哪个下面有“扩展程序”,通常是不带推荐的那个;另外一点是按照chrome.adm的过程中如果策略编辑器长时间停止响应的话可以强制将其关闭之后在打开就可以了,不影响后面的操作。

3. 接下来选择“扩展程序”,然后双击右侧的“配置扩展程序安装白名单”,如下图: 

4. 打开之后首先选择左边的”已启用“,然后选择下面的 显示 按钮,将安装之后的第三方插件的ID(打开Google Chrome的开发者模式之后会显示)输入到刚才的白名单对话框中确定保存即可。

5.关于chrome插件ID的获取方法,可以在chrome地址栏中输入:chrome://extensions/ 打开扩展程序的管理界面,点击开发者模式,即可看到已经安装的chrome插件的ID。
6.输入完成后点击确定保存,并关闭本地组策略编辑器,并在Chrome扩展管理界面关闭开发者模式,就可以正常地使用Chrome插件,并解决谷歌的停用开发者模式的警告了。

另外需要说明的是,这种情况下需要一直打开”开发者模式“,另外如果直接在开发者模式下通过加载插件开发目录形式加载插件也无效的话可以将其打包之后再安装就可以了,不过打包再安装之后其ID会发生变化。

二、打包导出报警提示的chrome插件重新安装

如果以上的方法还不行的话,那么就尝试找出是哪个插件导致提示“请停用以开发者模式运行的扩展程序”,然后将其打包导出扩展程序,方法参照:怎么从Chrome浏览器中导出扩展程序为crx文件?“打包扩展程序”这样在相应目录生成了 .crx 文件,然后直接拖到 chrome://extensions/ chrome扩展程序页面进行安装就行!如果不知道怎么安装CRX文件,请参照:怎么在谷歌浏览器中安装.crx扩展名的离线chrome插件

三、高手程序代码实现(说实话小编不懂,但是网友说给力)

复制以下代码并且另存为DevWarningPatch.bat 到任意位置,退出chrome,右键管理员运行即可。

<# :
@echo off
copy/b "%~f0" "%temp%\%~n0.ps1" >nul
powershell -Version 2 -ExecutionPolicy bypass -noprofile "%temp%\%~n0.ps1" "%cd% " "%~1"
del "%temp%\%~n0.ps1"
pause
exit /b
#>
param([string]$cwd=‘.‘, [string]$dll)

function main {
    "Chrome ‘developer mode extensions‘ warning disabler v1.0.10.20170114`n"
    $pathsDone = @{}
    if ($dll -and (gi -literal $dll)) {
        doPatch "DRAG‘n‘DROPPED" ((gi -literal $dll).directoryName + ‘\‘)
        exit
    }
    doPatch CURRENT ((gi -literal $cwd).fullName + ‘\‘)
    (‘HKLM‘, ‘HKCU‘) | %{ $hive = $_
        (‘‘, ‘\Wow6432Node‘) | %{
            $key = "${hive}:\SOFTWARE$_\Google\Update\Clients"
            gci -ea silentlycontinue $key -r | gp | ?{ $_.CommandLine } | %{
                $path = $_.CommandLine -replace ‘"(.+?\\\d+\.\d+\.\d+\.\d+\\).+‘, ‘$1‘
                doPatch REGISTRY $path
            }
        }
    }
}

function doPatch([string]$pathLabel, [string]$path) {
    if ($pathsDone[$path.toLower()]) { return }

    $dll = $path + "chrome.dll"
    if (!(test-path -literal $dll)) {
        return
    }
    "======================="
    "$pathLabel PATH $((gi -literal $dll).DirectoryName)"

    "`tREADING Chrome.dll..."
    $bytes = [IO.File]::ReadAllBytes($dll)

    # process PE headers
    $BC = [BitConverter]
    $coff = $BC::ToUInt32($bytes,0x3C) + 4
    $is64 = $BC::ToUInt16($bytes,$coff) -eq 0x8664
    $opthdr = $coff+20
    $codesize = $BC::ToUInt32($bytes,$opthdr+4)
    $imagebase32 = $BC::ToUInt32($bytes,$opthdr+28)

    # patch the flag in data section
    $data = $BC::ToString($bytes,$codesize)
    $flag = "ExtensionDeveloperModeWarning"
    $stroffs = $data.IndexOf($BC::ToString($flag[1..99]))/3 - 1
    if ($stroffs -lt 0) {
        write-host -f red "`t$flag not found"
        return
    }
    $stroffs += $codesize
    if ($bytes[$stroffs] -eq 0) {
        write-host -f darkgreen "`tALREADY PATCHED"
        return
    }

    $exe = join-path (split-path $path) chrome.exe
    $EA = $ErrorActionPreference
    $ErrorActionPreference = ‘silentlyContinue‘
    while ((get-process chrome -module | ?{ $_.FileName -eq $exe })) {
        forEach ($timeout in 15..0) {
            write-host -n -b yellow -f black `
                "`rChrome is running and will be terminated in $timeout sec. "
            write-host -n -b yellow -f darkyellow "Press ENTER to do it now. "
            if ([console]::KeyAvailable) {
                $key = $Host.UI.RawUI.ReadKey("AllowCtrlC,IncludeKeyDown,NoEcho")
                if ($key.virtualKeyCode -eq 13) { break }
                if ($key.virtualKeyCode -eq 27) { write-host; exit }
            }
            sleep 1
        }
        write-host
        get-process chrome | ?{
            $_.MainWindowHandle.toInt64() -and ($_ | gps -file).FileName -eq $exe
        } | %{
            "`tTrying to exit gracefully..."
            if ($_.CloseMainWindow()) {
                sleep 1
            }
        }
        $killLabelShown = 0
        get-process chrome | ?{
            ($_ | gps -file | select -expand FileName) -eq $exe
        } | %{
            if (!$killLabelShown++) {
                "`tTerminating background chrome processes..."
            }
            stop-process $_ -force
        }
        sleep -milliseconds 200
    }
    $ErrorActionPreference = $EA

    $bytes[$stroffs] = 0
    "`tPATCHED $flag flag"

    # patch the channel restriction code for stable/beta
    $code = $BC::ToString($bytes,0,$codesize)
    $rxChannel = ‘83-F8-(?:03-7D|02-7F)‘
    # old code: cmp eax,3; jge ...
    # new code: cmp eax,2; jg ...
    $chanpos = 0
    try {
        if ($is64) {
            $pos = 0
            $rx = [regex]"$rxChannel-.{1,100}-48-8D"
            do {
                $m = $rx.match($code,$pos)
                if (!$m.success) { break }
                $chanpos = $m.index/3 + 2
                $pos = $m.index + $m.length + 1
                $offs = $BC::ToUInt32($bytes,$pos/3+1)
                $diff = $pos/3+5+$offs - $stroffs
            } until ($diff -ge 0 -and $diff -le 4096 -and $diff % 256 -eq 0)
            if (!$m.success) {
                $rx = [regex]"84-C0.{18,48}($rxChannel)-.{30,60}84-C0"
                $m = $rx.matches($code)
                if ($m.count -ne 1) { throw }
                $chanpos = $m[0].groups[1].index/3 + 2
            }
        } else {
            $flagOffs = [uint32]$stroffs + [uint32]$imagebase32
            $flagOffsStr = $BC::ToString($BC::GetBytes($flagOffs))
            $variants = "(?<channel>$rxChannel-.{1,100})-68-(?<flag>`$1-.{6}`$2)",
                    "68-(?<flag>`$1-.{6}`$2).{300,500}E8.{12,32}(?<channel>$rxChannel)",
                    "E8.{12,32}(?<channel>$rxChannel).{300,500}68-(?<flag>`$1-.{6}`$2)"
            forEach ($variant in $variants) {
                $pattern = $flagOffsStr -replace ‘^(..)-.{6}(..)‘, $variant
                "`tLooking for $($pattern -replace ‘\?<.+?>‘, ‘‘)..."
                $minDiff = 65536
                foreach ($m in [regex]::matches($code, $pattern)) {
                    $maybeFlagOffs = $BC::toUInt32($bytes, $m.groups[‘flag‘].index/3)
                    $diff = [Math]::abs($maybeFlagOffs - $flagOffs)
                    if ($diff % 256 -eq 0 -and $diff -lt $minDiff) {
                        $minDiff = $diff
                        $chanpos = $m.groups[‘channel‘].index/3 + 2
                    }
                }
            }
            if (!$chanpos) { throw }
        }
    } catch {
        write-host -f red "`tUnable to find the channel code, try updating me"
        write-host -f red "`thttp://stackoverflow.com/a/30361260"
        return
    }
    $bytes[$chanpos] = 9
    "`tPATCHED Chrome release channel restriction"

    "`tWriting to a temporary dll..."
    [IO.File]::WriteAllBytes("$dll.new",$bytes)

    "`tBacking up the original dll..."
    move -literal $dll "$dll.bak" -force

    "`tRenaming the temporary dll as the original dll..."
    move -literal "$dll.new" $dll -force

    $pathsDone[$path.toLower()] = $true
    write-host -f green "`tDONE.`n"
    [GC]::Collect()
}

main
时间: 2024-10-23 11:50:48

Chrome提示:"请停用以开发者模式运行的扩展程序"的解决办法的相关文章

【最简单】禁用Chrome的“请停用以开发者模式运行的扩展程序”提示

安装油猴插件后,每次打开Chrome浏览器后右上角都会提示,“请停用以开发者模式运行的扩展程序”的一个窗口,强迫症患者表示很烦. 小白的我试过网上多数方法,有些已经失效,有些都太麻烦,我也懒的搞,最后神奇的发现了这种方法. 工具:火绒 火绒确实比其他安全软件要良心的多,楼主建议快卸载掉其他流氓安全软件,用上火绒,火绒很干净.(火绒看到给一下广告费吗,嘻嘻) 里边有个功能,窗口拦截. 1:选择截图拦截 2:鼠标放在Chrome浏览器右上角弹出来的窗口上 3:成功拦截 PS:最后还是要感谢火绒的强大

彻底禁用Chrome的“请停用以开发者模式运行的扩展程序”提示

彻底禁用Chrome的"请停用以开发者模式运行的扩展程序"提示,附工具下载 2018年07月25日 14:58:31 阅读数:86更多 个人分类: Web technology 对于高版本chrome,经常会出现烦人的"请停用以开发者模式运行的扩展程序"提示,如图:网上盛传的组策略法已失效. 话不多说,解决办法如下: 1.双击 x96dbg.exe ,然后选择 x64dbg(如果打不开,换 x32dbg打开): 2.将chrome版本号文件夹下的 chrome.dl

禁用Chrome的“请停用以开发者模式运行的扩展程序”提示

1.前言 每次启动都会有一个烦人的“请停用以开发者模式运行的扩展程序”提示,这个提示有多烦人,接触过的人都知道,启动的时候它不立即提示,等过了几秒钟等你打开某个网页开始执行某些操作时它突然弹出来干扰你的操作,真是苦不堪言!所以总想着如何把它给去掉. 2.解决方法:修改dll文件法 打开Chrome安装目录,找到chrome.dll文件,用x64dbg打开, 双击x96dbg.exe,然后选择x64dbg(如果打不开,换x32dbg打开): 然后连续多次点击运行到用户代码按钮,直至窗口标题处的模块

彻底禁用chrome请停用以开发者模式运行的扩展程序弹框

首先上图 怎么解决呢? 进入安装目录-->下图目录(一串数字的目录) 2. 找到chrome.dll 3.下载patch.exe   下载网址 https://itdocs.pipipan.com/fs/3843664-344656269 4.把下载好的patch.exe放到和chrome.dll的同级目录,然后双击运行patch.exe,再点击应用即可(要先关闭chrome浏览器才可以哦) 原文地址:https://www.cnblogs.com/bothin/p/11031035.html

干掉:“请停用以开发者模式运行的扩展程序”

根据其他博客的图文指导成功的干掉了扩展程序的无聊提示. 修改dll文件法 博文地址: https://www.cnblogs.com/liuxianan/p/disable-chrome-extension-warning.html 原文地址:https://www.cnblogs.com/q1359720840/p/10569054.html

(简单实用)禁用Chrome的“请停用以开发者模式运行的扩展程序”提示

1. 前言 之前一直在使用centbrowser,但是最近用它打开github和一些网站的时候,显示的网页不全,加上chrome稳定版发布了新的版本,便又投入了chrome怀抱.在安装了一些第三方扩展后,一直有停用插件的提示,而且还每次启动都有.找了网上的几个教程,发现大部分已经失效了,便自己想了个方法. 2. 解决方法 在网上搜了几种办法:组策略法,运行批处理法,直接改dll文件法. 组策略法我试了,没有用.运行批处理法貌似也失效了.直接改dll文件法有些麻烦,没去试了.需要下载个x64dbg

去除Chrome“请停用以开发者模式运行的扩展程序”提示

将version.dll放在chrome同级目录,重启浏览器 原文地址:https://www.cnblogs.com/qtnt/p/11980374.html

解决 Chrome 请停用以开发者模式运行的扩展程序

在桌面新建DevWarningPatch.bat,写入以下内容,以管理员身份运行 <# : @echo off copy/b "%~f0" "%temp%\%~n0.ps1" >nul powershell -v 2 -ep bypass -noprofile "%temp%\%~n0.ps1" "'%cd% '" "'%~1'" del "%temp%\%~n0.ps1"

【Chrome插件】去掉因使用jsonView插件的弹出窗口&quot;请停用以开发者模式运行的扩展程序&quot;

前言 小编最近使用jsonView插件时,每次打开谷歌浏览器都会弹出下面的窗口,上网搜索,找到一个非常有效的方法. 解决方法 一.新建一个文本文档 二.复制代码 1 <# : 2 @echo off 3 copy/b "%~f0" "%temp%\%~n0.ps1" >nul 4 powershell -Version 2 -ExecutionPolicy bypass -noprofile "%temp%\%~n0.ps1" &qu