精华内容
下载资源
问答
  • win7系统调用tts的语音朗读功能

    千次阅读 2020-09-18 10:08:34
    windows的tts组件,正版系统或者win10系统是可以直接调用成功的,但win7有的是阉割版,有的不支持,调用的时候各种异常,网上的人各种抄袭,不知道所以然,还爱瞎bb,我就费了好大劲才完全搞清楚。 常见的异常有: ...

    windows的tts组件,正版系统或者win10系统是可以直接调用成功的,但win7有的是阉割版,有的不支持,调用的时候各种异常,网上的人各种抄袭,不知道所以然,还爱瞎bb,我就费了好大劲才完全搞清楚。
    常见的异常有:

    System.IO.FileNotFoundException
      HResult=0x8007007E
      Message=检索 COM 类工厂中 CLSID 为 {D9F6EE60-58C9-458B-88E1-2F908FD7F87C} 的组件失败,原因是出现以下错误: 8007007e 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。
      Source=System.Speech
      StackTrace:
       在 System.Speech.Internal.ObjectTokens.RegistryDataKey..ctor(String fullPath, IntPtr regHandle)
       在 System.Speech.Internal.ObjectTokens.RegistryDataKey.Open(String registryPath, Boolean fCreateIfNotExist)
       在 System.Speech.Internal.ObjectTokens.SAPICategories.DefaultDeviceOut()
       在 System.Speech.Internal.Synthesis.VoiceSynthesis..ctor(WeakReference speechSynthesizer)
       在 System.Speech.Synthesis.SpeechSynthesizer.get_VoiceSynthesizer()
       在 System.Speech.Synthesis.SpeechSynthesizer.SpeakAsync(Prompt prompt)
       在 System.Speech.Synthesis.SpeechSynthesizer.SpeakAsync(String textToSpeak)  
    
    SampleTTSVoice,System.ArgumentException: 不能设置语音。未安装匹配的语音,或语音被禁用。
       在 System.Speech.Synthesis.SpeechSynthesizer.SelectVoice(String name)
    

    开发语言可以使用C#,java,Python,或者微软的VBS,都可以,这几种语言的朗读代码网上都很好找,主要就是配置windows环境。
    https://download.csdn.net/download/weixin_42209881/12844165
    这是win7的tts修复包,下载下来直接安装,很简单。
    修复好之后,就可以进行代码开发了,我以java为例,C#的和Python的可以留言,谁需要,找我要:
    先下载一个这个jar包 : jacob.jar在这里插入图片描述
    再下载一个dll库(32位和64位的注意区分):jacob-1.17-M2-x64.dll
    在这里插入图片描述
    这个dll库下载好之后要放在jdk和jre的bin目录下(jre的bin目录放不放不影响,但放上稳妥),就像这样
    在这里插入图片描述

    这些所有依赖我都放在了一起,可以一次下载下来:
    在这里插入图片描述
    下载链接:
    https://download.csdn.net/download/weixin_42209881/12857855
    然后看java代码:

    package com.zhang.test.speak;
    
    import com.jacob.activeX.ActiveXComponent;
    import com.jacob.com.Dispatch;
    import com.jacob.com.Variant;
    
    public class SpeakVoice {
    
    	
    	public static void main(String[] args) {
    		System.out.println(args[0]);
    		speak(args[0]);
    		//strat("语音朗读的内容", 0);
    		System.exit(1);
    	}
    
    		/**
    		 * 
    		* @Title: strat
    		* @Description: 该方法的主要作用:朗读
    		* @param  @param content
    		* @param  @param type 设定文件   0:开始,1停止
    		* @return  返回类型:void   
    		* @throws
    		 */
    		public static void strat(String content, int type) {
    			//这个Sapi.SpVoice是需要安装什么东西吗,感觉平白无故就来了
    			ActiveXComponent sap = new ActiveXComponent("Sapi.SpVoice");
    			// Dispatch是做什么的?
    			Dispatch sapo = sap.getObject();
    			
    			if (type == 0) {
    				try {
    					// 音量 0-100
    					sap.setProperty("Volume", new Variant(100));
    					// 语音朗读速度 -10 到 +10
    					sap.setProperty("Rate", new Variant(1.3));
    					Variant defalutVoice = sap.getProperty("Voice");
    	 
    					Dispatch dispdefaultVoice = defalutVoice.toDispatch();
    					Variant allVoices = Dispatch.call(sapo, "GetVoices");
    					Dispatch dispVoices = allVoices.toDispatch();
    	 
    					Dispatch setvoice = Dispatch.call(dispVoices, "Item",
    							new Variant(1)).toDispatch();
    					ActiveXComponent voiceActivex = new ActiveXComponent(
    							dispdefaultVoice);
    					ActiveXComponent setvoiceActivex = new ActiveXComponent(
    							setvoice);
    	 
    					Variant item = Dispatch.call(setvoiceActivex, "GetDescription");
    					// 执行朗读
    					Dispatch.call(sapo, "Speak", new Variant(content));
    	 
    				} catch (Exception e) {
    					e.printStackTrace();
    				} finally {
    					sapo.safeRelease();
    					sap.safeRelease();
    				}
    			} else {
    				// 停止
    	 
    				try {
    					Dispatch.call(sapo, "Speak", new Variant(content), new Variant(
    							2));
    				} catch (Exception e) {
    					System.out.println(e.getMessage());
    					e.printStackTrace();
    				}
    			}
    	 
    		}
    		
    		
    		public static void speak(String text) {
    	         ActiveXComponent sap = new ActiveXComponent("Sapi.SpVoice");  
    	            try {  
    	                // 音量 0-100  
    	                sap.setProperty("Volume", new Variant(100));  
    	                // 语音朗读速度 -10 到 +10  
    	                sap.setProperty("Rate", new Variant(0));  
    	                // 获取执行对象  
    	                Dispatch sapo = sap.getObject();  
    	                // 执行朗读  
    	                Dispatch.call(sapo, "Speak", new Variant(text));  
    	                // 关闭执行对象  
    	                sapo.safeRelease();  
    	            } catch (Exception e) {  
    	                e.printStackTrace();  
    	            } finally {  
    	                // 关闭应用程序连接  
    	                sap.safeRelease();  
    	            }  
    	    }
    
    }
    

    那个下载包里的speak.jar就是我这些代码生成的工具jar包,可以直接调用:
    在这里插入图片描述
    像这样,运行后,就听到响亮的朗读声音了
    有什么不到之处,欢迎大家下方留言,讨论

    展开全文
  • svn 系统调用失败解决

    2017-04-25 09:29:54
    重装svn并不管用,ie上能登上该网址,但svn不行. ...win10 64位 通过命令行(管理员)输入以下命令并重启电脑解决 ipconfig /flushdns  ipconfig /registerdns  netsh winsock reset
    重装svn并不管用,ie上能登上该网址,但svn不行.

    win10 64位 通过命令行(管理员)输入以下命令并重启电脑解决
    ipconfig /flushdns 

    ipconfig /registerdns 

    netsh winsock reset 
    展开全文
  • ``` QDesktopServices::openUrl(QUrl("osk.exe", QUrl::TolerantMode)); ``` ...在win10下则调用失败,提示:ShellExecute 'osk.exe' failed (error 2). 请问各位大神,有谁知道的,不甚感谢。
  • Win7之家(www.win7china.com):不忘旧人,四招轻松解决Win7系统IE11兼容性问题IE11是IE最高版本的浏览器,也可能是微软最后一个版本的IE浏览器啦,在Win10系统中作为备用浏览器得以保留。目前使用IE11的用户数量已...

    Win7之家(

    www.win7china.com):不忘旧人,四招轻松解决Win7系统IE11兼容性问题

    IE11是IE最高版本的浏览器,也可能是微软最后一个版本的IE浏览器啦,在Win10系统中作为备用浏览器得以保留。目前使用IE11的用户数量已超越IE10和IE9的总数。虽然IE11有很多优点,但是在浏览一些网站的时候还是会出现一些兼容性的问题,比如看视频绿屏的问题你有没有遇到过?如果想要更为流畅的运行IE11浏览器的话,可参考下面小编提供的方法。不仅适用于Windows10,对于Win7/Win8/Win8.1下的IE11同样可用。

    20150602_161746_101.jpg

    当遇到打开有问题的网站,可以尝试下面的操作:

    一、添加受信任的站点

    1.打开IE11浏览器,点击右上角的“工具”选项,再选择“Internet选项”;

    2.点击界面的上方的“安全”选项卡,然后点击“受信任的站点”;

    3.点击“站点”,添加该行的网站。

    二、添加兼容性视图设置

    1.打开IE11浏览器,点击右上角的“工具”选项,再选择“兼容性视图设置”;

    2.将该行网站添加到“兼容性视图中的网站”;

    3.关闭IE11浏览器,重新登入。

    三、关闭保护模式

    1.打开IE11浏览器,点击右上角的“工具”选项,再选择“Internet选项”;

    2.点击界面的上方的“安全”选项卡,然后点击“Internet”;

    3.把“启用保护模式”的勾选去掉,另外,切换到“高级”选项卡,找到“增强保护模式”,如果前面有勾选并可选的话,请您将前面的勾去掉;

    4.关闭IE11浏览器,重新登入。

    四、禁用GPU硬件加速

    如果用户的电脑是没有独立显卡的老机器,在用IE11观看优酷之类的在线视频时,会出现切换为全屏模式后当前视频就自动关闭的异常状况。这是由于用户的集成显卡不支持硬件加速导致的,只要将当前的Flashplayer播放插件卸载,并安装10.2及以下版本即可解决。此外,如果用户并不想在以后升级自己电脑,在进行下面的操作:

    1.打开IE,点击右上角的“工具”选项,再选择“Internet选项”;

    2.点击界面的上方的“安全”选项卡,然后点击“Internet”;

    3.把“启用保护模式”的勾选去掉,另外,切换到“高级”选项卡,找到“使用软件呈现而不使用GPU呈现”选项,如果前面有勾选并可选的话,请您将前面的勾去掉;

    4.关闭IE,重新打开该网站

    另外,如果您的设备曾经装载过或正在使用第三方的防毒软件,建议您可以进行卸载或停用的操作,看问题是否得到改善。

    展开全文
  • 在研究进程注入的时候,发现在Win10 64位上调用NtCreateThreadEx可以执行成功,但是换到Win7 64位上会失败,并且返回GetLastError = 8,程序是以管理员运行且内部已实现提升进程访问权限。 解决方案 函数...

    问题

    在研究进程注入的时候,发现在Win10 64位上调用NtCreateThreadEx可以执行成功,但是换到Win7 64位上会失败,并且返回GetLastError = 8,程序是以管理员运行且内部已实现提升进程访问权限。

    解决方案

    函数NtCreateThreadEx在32位和64位的定义有所不同,区分不同的系统位数选择函数声明节课解决在Win7 64位上调用失败的问题。

    64位NtCreateThreadEx函数声明如下:

    DWORD (__stdcall * _NtCreateThreadEx)(   
        PHANDLE ThreadHandle,   
        ACCESS_MASK DesiredAccess,   
        LPVOID ObjectAttributes,   
        HANDLE ProcessHandle,   
        LPTHREAD_START_ROUTINE lpStartAddress,   
        LPVOID lpParameter,   
        ULONG CreateThreadFlags,   
        SIZE_T ZeroBits,   
        SIZE_T StackSize,   
        SIZE_T MaximumStackSize,   
        LPVOID pUnkown
        ) = NULL; 

    32位NtCreateThreadEx函数声明如下:

    DWORD (__stdcall * _NtCreateThreadEx)(   
        PHANDLE ThreadHandle,   
        ACCESS_MASK DesiredAccess,   
        LPVOID ObjectAttributes,   
        HANDLE ProcessHandle,   
        LPTHREAD_START_ROUTINE lpStartAddress,   
        LPVOID lpParameter,   
        BOOL CreateSuspended,   
        DWORD dwStackSize,   
        DWORD Unknown1,   
        DWORD Unknown2,   
        LPVOID Unknown3   
        ) = NULL; 

    遗留问题

    为什么在Win10 64位上使用32位的函数声明可以执行成功呢?

    展开全文
  • win10系统安装anaconda,安装tensorflow库,多次失败,最后成功,艰辛过程分享一下 win10系统,安装anaconda+tensorflow 刚开始用python+tensorflow训练神经网络,后来网上了解anaconda更加方便,自带的spyder编辑器...
  • 本文基于网上失败与成功经验,经过多次调试,实现了Win10(x64)系统下Python 3.6.5(Anaconda3)本地调用哈工大LTP 3.4,故将主要关键步骤分述如下: LTP的选择与下载 LTP本地安装 pyltp库安装 程序调用与测试 ...
  • 重构机房的过程参考用VB生成的“机房收费系统.exe”可执行 ,安装后有一些涉及到控件的窗体会报错,提示“运行错误'399' 部件‘***.ocx’或其附件之一不能正确注册:一个文件丢失或无效”。这个问题是因为所需要的...
  • 关于Win10 NET3.5安装失败的各位老板,你们网上看到的命令都没问题,问题是你下载的sxs文件或者3.5文件不行。 最好的方案是下载你的系统的安装包,然后装载到虚拟光盘,然后再调用命令: dism.exe /online /enable...
  • 开机黑屏,任务管理器新建桌面任务提示远程过程调用失败且未执行,用了网上的方法重新添加dllhost.exe程序,提示说我是64位系统,然后改注册表shell文件数值也是毫无反应的
  • 本来是想调用py3环境跑代码的,然后输入却失败了: conda activate py3 完整报错如下: I:\CycleGAN-TensorFlow-master>conda activate py3 CommandNotFoundError: Your shell has not been properly ...
  • 重构机房的过程需要参考用VB生成的“机房收费系统”,安装后需要执行的步骤: 第一:需要配置文件DSN: 文件名称:charge 服务器:(local) 用户名:sa 密码:123456 数据库:charge_sys 第二:附加数据库 ...
  • 问题描述:操作系统Win10 64位。自己写了一个窗口应用(32位),就叫它DemoWin.exe吧,把它放到 C:\Windows\System32 文件夹下。然后安装了一个服务(32位),在服务里调用CreateProcessAsUser创建 DemoWin.exe ...
  • 1.首先将 F:\opencv\sources\3rdparty\ffmpeg (看你的opencv装在哪的,写好路径就行,我的是装在F盘的)添加到系统目录。 2.然后将F:\opencv\sources\3rdparty\ffmpeg下的opencv_ffmpeg.dll 和opencv_ffmpeg_64....
  • 内含MODI支持的全部21种语言,用于WIN7 WIN8 WIN10的32位和64位系统 文件全部用的是Office 2003。 =安装方法= 单击 Install_MODI_2003.bat 右键 以管理员身份运行 如果regsvr32弹出提示框报告“LoadLibrary("…...
  • 调用系统底层的waveInOpen方法,发现个特别奇怪的问题,在一台电脑上是没有问题的, 但换了另一台电脑一直返回错误1, 网络上搜索不到产生该值的情况,音频输入设备都是有的,今天突发奇想打开了系统的录音机,发现系统录音...
  • 上周,在一批Win10系统电脑上安装SqlServer 2012时,屡次发生报错,安装失败,显示的失败信息是:等待数据库引擎恢复句柄失败 如下图所示: 面对这样的错误,我的第一反应是百度,在百度上找了一下,发现网上对...
  • 想在win10系统上,用TF_Serving 部署一个模型并远程调用。由于书中作者只详细介绍了在Linux下部署,简单提及了win10下部署,由于不详细,省略了其中一些步骤,导致win10部署失败。在自己查阅许多文章,试错多次...
  • 电脑是64位Win10系统。 安装包下载地址: 链接:https://pan.baidu.com/s/1VEToywo-wd8Zmhw3W_c9Tw 提取码:lfu6 下载解压之后,点击可执行文件进行安装,安装的时候需要在注意一下,64位的电脑好像只能安装在C:\...
  • 只能重装系统了呗~┑( ̄Д  ̄)┍于是就重装了系统,然后以为之前用的是win10,但是重装了几次,总时用着用着就崩溃了,所以决定换个系统,换了一个win8.1,因为换到win8.1了,所以SQL也就不用像在
  • 前一个月安装了WIN10大更新后,原有的驱动(3XX.15的)失效了,进入游戏后,无法调用独显。使用GeForceExperience无法检测到新驱动。手动下载最新的Nvidia驱动,安装失败。 这个问题网上有很多小伙伴们遇到,...
  • 今天遇到个问题,我的系统win7系统下使用getpeername接口获取IP可以,但是我同事的win10却不行,接口调用返回失败,获取的错误码为10014.网络上找到一个相关的文章:...
  • 背景 产品使用MySQL来存储报警服务产生的报警。...另一台计算机B用作验收后生产环境中使用,操作系统是Win 2008 R2 标准版 我个人在公司的工作机的操作环境是win10 64bit 企业版 问题 在客户公司时,组...
  • 0、win10系统,显卡是NIVIDIA Geforce MX150 1、python 3.6.0 (Anaconda 4.3.1) 2、tensorflow 1.5.0 3、cmake 3.7.2 4、swigwin-4.0.2 好了,开始进入正题,一步一步进行安装。 一、首先下载tensorflow ...
  • 本人开发Win程序,需要调用网站资源作为Win程序的辅助功能,为此需要本地开发环境支持IIS。最近重装系统,VS安装完后,接着再安装IIS,可以在添加删除程序中反复尝试,均告安装失败提示。最后想到VS2015启动网站工程...
  • .Net调用Office Com组件的原理及问题:检索com类工厂组件检索 COM 类工厂中 CLSID 为 {XXX} 的组件失败 Net调用Office Com组件的原理及问题检索...我的主页 www.csxiaoyao.com最近在本地64位win10操作系统+vs2015+offi
  • 问题描述 无法获得 VMCI 驱动程序的版本: 句柄无效。 驱动程序“vmci.sys”的版本不正确。...但是win10对VMCI支持不完善,个别机器会报错。 比如我这次就是更新系统之后出现了这个问题,VMware提示我们重装这个软
  • windows 10 64 位,vs2015,C#环境下,调用系统软键盘,失败的解决方案,根源感觉在权限方面;
  • Windows 10专业版,64位操作系统,基于x64的处理器。 在命令行窗口中查询当前用户,正常显示。 在32Bit应用调用相应的命令行 Python代码:cmd = r"cmd /c query user" os.system(cmd) 结果: 2. 分析问题 定位...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 165
精华内容 66
关键字:

win10系统调用失败