有没有办法在Windows XP及更高版本中获取完整的音频设备名称?
我可以使用MIXERCAPS,但szPname成员将限制为32个字符(包括NULL).对于音频设备名称"麦克风(高清晰度音频设备)",我只返回"麦克风(高清晰度Aud)".这是由于MAXPNAMELEN被定义为32.我已经尝试将其重新定义为更大的数字而没有效果.
这是我正在使用的代码:
MIXERCAPS mc;
ZeroMemory( &mc, sizeof(MIXERCAPS) );
mm = mixerGetDevCaps( reinterpret_cast<UINT_PTR>(m_hMixer), &mc, sizeof(MIXERCAPS) );
Run Code Online (Sandbox Code Playgroud)
我看到了这个问题,但它引用了Vista及其后的内容.
我在使用Python 3中的smtplib通过电子邮件发送unicode字符时遇到问题.这在3.1.1中失败,但在2.5.4中有效:
import smtplib
from email.mime.text import MIMEText
sender = to = 'ABC@DEF.com'
server = 'smtp.DEF.com'
msg = MIMEText('€10')
msg['Subject'] = 'Hello'
msg['From'] = sender
msg['To'] = to
s = smtplib.SMTP(server)
s.sendmail(sender, [to], msg.as_string())
s.quit()
Run Code Online (Sandbox Code Playgroud)
我尝试了一些来自文档的例子,但也失败了. http://docs.python.org/3.1/library/email-examples.html,将目录内容作为MIME消息示例发送
有什么建议?
(这本来是一个普遍的假设性问题,我抱怨说.NET是一只猪并且乞求理由.这并不是关于我的特定应用程序的问题.)
目前我正在用C#重写一些旧的C++代码.我们正在移植所有遗留应用程序.我有C++应用程序,占用MAX 3%CPU.他们大多没有使用.然后我接受代码,复制和粘贴,然后重新格式化为C#语法和.NET库,以及BAM!50%的CPU.这是什么原因?我一开始认为它是JIT,但即使在每个代码路径都进行了练习之后,整个事情也被JIT编辑,同样的问题.
我也注意到了大量的内存增加.花费9 MB运行满载的应用程序现在从10 MB开始,运行速度为50 MB.我意识到硬件很便宜,但我想了解导致这种情况的原因.它是引起恐慌的原因,还是.NET就像猪一样?
更新1对Skeet的回答
我熟悉C#.我将事情改为Linq,依此类推.我通常采用代码并减少行数,依此类推.你能举一些C++人在.NET中做错的例子吗?
更新2
这是一个普遍的问题,但具有该问题的具体应用程序如下.
它有一个线程使用和ODBC驱动程序从一个paradox数据库中获取数据.然后它使用Linq将其转换为SQL db并发布它.我通过ANTS分析器运行它,似乎数据集填充花费的时间最多.其次是Linq发帖.我知道我的一些领域是反射用法,但我不知道怎么做我需要的东西.我计划将我的字符串更改为字符串构建器.这两者有什么区别吗?
(int)datarow["Index"]
Run Code Online (Sandbox Code Playgroud)
和
ConvertTo.Int32(datarow["Index"])
Run Code Online (Sandbox Code Playgroud)
我更改了所有字符串连接以格式化字符串.这并没有减少头脑.有没有人知道数据读取器与数据适配器和数据集之间的区别?
我有这个代码从目录中读取所有文件.
File textFolder = new File("text_directory");
File [] texFiles = textFolder.listFiles( new FileFilter() {
public boolean accept( File file ) {
return file.getName().endsWith(".txt");
}
});
Run Code Online (Sandbox Code Playgroud)
它很棒.它使用目录"text_directory"中以".txt"结尾的所有文件填充数组.
如何在 JAR文件中以类似的方式读取目录的内容?
所以我真正想做的是,列出我的JAR文件中的所有图像,所以我可以加载它们:
ImageIO.read(this.getClass().getResource("CompanyLogo.png"));
Run Code Online (Sandbox Code Playgroud)
(那个是有效的,因为"CompanyLogo"是"硬编码的",但JAR文件中的图像数量可以是10到200个可变长度.)
编辑
所以我想我的主要问题是:如何知道我的主类所在的JAR文件的名称?
当然,我可以使用它来阅读它java.util.Zip.
我的结构是这样的:
他们就像:
my.jar!/Main.class
my.jar!/Aux.class
my.jar!/Other.class
my.jar!/images/image01.png
my.jar!/images/image02a.png
my.jar!/images/imwge034.png
my.jar!/images/imagAe01q.png
my.jar!/META-INF/manifest
Run Code Online (Sandbox Code Playgroud)
现在我可以使用以下命令加载例如"images/image01.png":
ImageIO.read(this.getClass().getResource("images/image01.png));
Run Code Online (Sandbox Code Playgroud)
但只是因为我知道文件名,其余的我必须动态加载它们.
我有一个强度/灰度图像,并且在该图像中选择了一个像素。我想从所有方向/角度从该像素开始发送矢量,并且我想对所有矢量求和触摸一个矢量的像素的所有强度的总和。
在此步骤之后,我想绘制一个直方图,其中一个轴上的强度,另一个轴上的角度。我想我可以自己完成最后一步,但是我不知道如何在我的灰度图像中创建这些矢量以及如何获取矢量接触的像素的坐标。
我以前是用C ++做到的,这需要很多代码。我确信这可以在MATLAB中花费更少的精力来完成,但是我对MATLAB还是很陌生,因此将不胜感激,因为我在文档中没有发现任何帮助。
在Git中,我如何组织工作来跟踪库的本地配置文件,这是一个git子模块?
详情如下:
该库具有被跟踪的普通文件,以及位于其文件夹中但未被跟踪的默认配置文件,以避免重置或覆盖它们(它们在.gitignore中列出).所有文件都在lib的文件夹或子文件夹中.
我开始在Git中跟踪其中一个使用此库的项目.现在有一个两难的境地:
如果我将这个项目中的lib作为一个子模块,我将无法跟踪配置文件(Git将忽略它们,因为它们位于子模块文件夹中).
正如我所理解的那样,将一切作为一个大项目跟踪是一个坏主意.
如果我做跟踪库中的配置文件,我怎么能避免重置它们为默认值?我是否在工作项目中分支并且每次都从主人那里拉出来?那么,如果我编辑库和配置文件呢?这必然会导致合并冲突,不是吗?
我想这不是新的,但我找不到任何建议.我很感激从你的经验中学习.
我试图将我的一些django视图从基于函数的视图转换为基于类的视图,我遇到了一个小问题.
我的OO有点弱,我认为问题在于我已经忘记了事情的进展.
我有一个自定义的登录装饰器,我需要在视图上,所以我...
首先,我从这个例子中获得了View类 http://www.djangosnippets.org/snippets/760/
然后我的视图类看起来像这样......
class TopSecretPage(View):
@custom_login
def __call__(self, request, **kwargs):
#bla bla view stuff...
pass
Run Code Online (Sandbox Code Playgroud)
问题是我的装饰者由于某种原因无法访问request.session ...
我的装饰师看起来像这样......
def myuser_login_required(f):
def wrap(request, *args, **kwargs):
# this check the session if userid key exist,
# if not it will redirect to login page
if 'field' not in request.session.keys():
return wrap
Run Code Online (Sandbox Code Playgroud)
我觉得这很简单,我很想念,所以感谢大家的耐心等待!
更新:好的,这就是我得到的错误......
"ViewDoesNotExist:在模块projectname.application.views中尝试了TopSecretPage.错误是:类型对象'TopSecretPage'没有属性'session'"
我简化了装饰器,看起来像这样....
def myuser_login_required(request, *args, **kwargs):
# this check the session if userid key exist,
# if not it will redirect to login page
if 'username' …Run Code Online (Sandbox Code Playgroud) 我无法理解Tibco的特别之处.
他们的营销材料强调TCP是一种悲观的传输协议,不需要客户确认收据.这怎么可能是真的?
对我来说,Tibco基本上是一个由队列支持的TCP协议.
有人可以帮我理解Tibco的主要卖点吗?我即将对我的经理咆哮,告诉他我们在这里完全被扯掉了.
我很好奇一个场景设置如下例:
以下是放在名为Header1.h的文件中的代码:
#ifndef HEADER1_H
#define HEADER1_H
#include "Header2.h"
class Class1
{
Class2 class2Instance;
};
#endif
Run Code Online (Sandbox Code Playgroud)
这是将放在名为Header2.h的文件中的代码:
#ifndef HEADER2_H
#define HEADER2_H
#include "Header1.h"
class Class2
{
Class1 class1Instance;
};
#endif
Run Code Online (Sandbox Code Playgroud)
当我这样做时,我收到错误消息(因为我假设的包含),但感觉我需要这样做才能在每个单独的类中包含每个对象.任何人都可以帮助我实现这个目标,我做错了什么?