我想检查一个特定的文件是否可以通过ShellExecute成功"打开",所以我试图使用AssocQueryString来发现这个.
例:
DWORD size = 1024;
TCHAR buff[1024]; // fixed size as dirty hack for testing
int err = AssocQueryString(0, ASSOCSTR_EXECUTABLE, ".mxf", NULL ,buff , &size);
openAction->Enabled = ((err == S_OK) || (err == S_FALSE)) && (size > 0);
Run Code Online (Sandbox Code Playgroud)
现在,这几乎可行.如果有注册的应用程序,我会得到字符串.
但是,有一个问题:在Vista上,即使没有注册的应用程序,它返回应用程序c:\ Windows\System32\shell32.dll是关联的,这是带来100%无用的东西"Windows无法打开这个文件:使用Web服务找到正确的程序?" 对话.
显然我想要隐藏最终用户的cr*p,但简单地将返回的字符串与常量进行比较似乎是一种丑陋,暴力和脆弱的方式.
此外,黑客入侵注册表以完全禁用此对话框不是一个好主意.
什么是更好的选择?
我正在开发一个可可应用程序.我正面临一个严峻的问题.
我正在使用以下代码删除Core Data中名为"Directory"的对象的条目:
NSEnumerator *tempDirectories = [[folderArrayController arrangedObjects] objectEnumerator];
id tempDirectory;
while (tempDirectory = [tempDirectories nextObject]){
[managedObjectContext deleteObject:tempDirectory];
}
Run Code Online (Sandbox Code Playgroud)
但有时在删除后尝试保存时会发生类似"核心数据无法解决故障..."的异常.我正在使用代码[managedObjectContext save];
我是Core Data的新手...期待一个解决方案.
我的结构如下:
typedef struct {
unsigned long attr;
char fileName[128];
} entity;
Run Code Online (Sandbox Code Playgroud)
然后我尝试分配一些值,但得到一条错误信息......
int attribute = 100;
char* fileNameDir = "blabla....etc";
entity* aEntity;
aEntity->attr = attributes;
aEntity->fileName = fileNameDir;
Run Code Online (Sandbox Code Playgroud)
编译告诉我:
错误:#137:表达式必须是可修改的左值aEntity-> fileName = fileNameDir;
为什么我不能在这里将这个角色分配给结构中的那个角色?
谢谢
我有2个单选按钮,但可以选择两个单选按钮,
<form class="descriptions" id="collection" method="post" action="">
<table width="200">
<tr>
<td>
<label>Collection</label>
<input type="radio" value="collection" />
</td>
<td>
<label>Delivery</label>
<input type="radio" value="delivery" />
</td>
</tr>
</table>
</form>
Run Code Online (Sandbox Code Playgroud)
我知道这很容易,但我似乎找不到答案,任何帮助都会受到赞赏.
是否可以创建只能在Moose的构造函数中设置的属性?我想做这样的事情:
my $foo = new Foo(file => 'foo.txt');
my $bar = new Foo(string => $str);
$foo->file('baz.txt'); # dies
Run Code Online (Sandbox Code Playgroud)
我知道我可以创建一个无法在构造函数中设置的属性,但似乎缺少补充案例.
假设您在R中有此数据,并且您想在stackoverflow上发布一个问题.对于其他人来说,如果他们能够拥有您的对象(数据框,矢量等)的副本,那将会很好.
假设您的数据位于名为site.data的数据框中
> site.data
site year peak
1 ALBEN 5 101529.6
2 ALBEN 10 117483.4
3 ALBEN 20 132960.9
8 ALDER 5 6561.3
9 ALDER 10 7897.1
10 ALDER 20 9208.1
15 AMERI 5 43656.5
16 AMERI 10 51475.3
17 AMERI 20 58854.4
Run Code Online (Sandbox Code Playgroud)
如何打包它以便用户可以完全按照您的方式重新创建数据?
您希望在没有人下载文本文件并导入它的情况下执行此操作.
(注意:这些数据来自REvolutions博客的一个例子)
我想使用反射根据文件中的数据设置一些字段.我可以拥有的信息是TypeName,TypeValue和FieldName.
虽然这对类(Activator.CreateInstance和PropertyInfo.SetValue)来说是微不足道的,但是对于像Int32这样没有任何属性的值类型,我有点愚蠢.我看到IsValueType在那些类型上是真的,但由于我的TypeValue是一个字符串(即字符串TypeValue ="400"),我不知道如何分配它.
我是否必须GetMethods()用来检查是否有.Parse方法?这是为了TypeConverter什么?
我知道我可以硬编码一些常见的值类型(反正没有那么多)并且有一个很大的switch()语句,但是我想知道是否有一些东西可以自动执行"Convert String to T"转换?
我想要做的是有一个页面/Products/Details/{id},其中有路由到动作详细信息ProductsController,还有一个编辑页面/Products/Details/Edit/{id}.
我试图[ActionName("Details/Edit")]在动作上使用但这不起作用.
当div被翻过来时,我正在使用prepend()函数来显示图像.如何删除图像 - 即与prepend相反的内容()
这是代码:
$("#hover-div").hover(
function() { $("#image-div").prepend("<img src='images/arrow_redo.png' width='16' height='16' />"); },
function() { $("#image-div").someFunction("<img src='images/arrow_redo.png' width='16' height='16' />"); }
);
Run Code Online (Sandbox Code Playgroud)
someFunction只是一个假人 - 我真的不希望它做任何事情.