小编Kat*_*ory的帖子

在Windows上删除C++中的权限

在Windows上运行的C++应用程序是否有可能在运行时删除权限?

例如,如果用户以管理员身份启动我的应用程序,但没有理由以管理员身份运行我的应用程序,我是否可以某种方式放弃管理员权限?

简而言之,我想在main()函数中编写代码来删除我不需要的权限(例如,Windows目录上的写访问权限).

c++ permissions uac

18
推荐指数
1
解决办法
1万
查看次数

如何取消异步调用?

如何取消异步调用?.NET APM似乎不支持此操作.

我的代码中有以下循环,它在ThreadPool上生成多个线程.当我单击UI上的按钮时,我希望这些线程(或异步调用)结束.

foreach (var sku in skus)
{
    loadSku.BeginInvoke(...
}
Run Code Online (Sandbox Code Playgroud)

除了创建全局"取消标志"并使用异步方法查找它之外,还有其他优雅的解决方案吗?

.net c# asynchronous c#-3.0

18
推荐指数
1
解决办法
1万
查看次数

什么是C#@符号前缀字符串的C++等价物?

什么是C#@符号前缀字符串的C++等价物?是否自动转义符号?

示例:var howManySlashesAreThereIn = @"\\\\\\";

c++ escaping

17
推荐指数
2
解决办法
6029
查看次数

将应用程序清单嵌入到VB6 exe中

我最近浏览了一堆用VB6编写的独立实用程序应用程序,以确保Windows Vista及更高版本的注册表虚拟化已关闭.我为每个exe创建了一个独立的清单文件,设置得requestedExecutionLevel恰当(其中一些需要修改HKEY_LOCAL_MACHINE注册表项,其他不需要),并测试它们.它们似乎都正常工作.

我只剩下一个小问题.由于它们是独立的实用程序,人们习惯于只在网络上复制它们并手动运行它们.如果有人忘记复制清单文件以及exe,那么exe将静默写入虚拟化注册表项而不是真实注册表项,并导致难以调试的问题.

显而易见的解决方案是将清单作为资源嵌入到exe中.我在网上看到的所有文章都告诉你要嵌入这样的资源:

#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1
#define RT_MANIFEST 24
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "app.manifest"
Run Code Online (Sandbox Code Playgroud)

这应该工作得很好,除了VB编译器总是创建资源ID = 1的应用程序图标.当我尝试上面的代码时,Windows拒绝运行exe,抱怨资源错误(我将更新此帖子与细节稍后).我尝试将资源ID更改为另一个数字,之后Windows成功运行程序但未识别清单内容.

有没有人知道如何让一个嵌入式清单在VB6 exe中工作,或者我应该坚持使用外部文件?

更新1

上面给出的文本是.rc文件的全部内容.我把它编译成这样的.res文件:

"%ProgramFiles%\Microsoft Visual Studio\VB98\Wizards\rc.exe" /r /fo "Resources.res" "Resources.rc"

并将其嵌入VB6项目文件中,如下所示:

Type=Exe
Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#..\..\..\..\..\..\..\..\WINDOWS\system32\stdole2.tlb#OLE Automation
Form=Main.frm
ResFile32="Resources.res"
IconForm="FMain"
Startup="FMain"
HelpFile=""
Title="Windows Vista Registry Test - VB6"
ExeName32="RegistryTestVB6.exe"
Path32=""
Command32=""
Name="RegistryTestVB6"
HelpContextID="0"
CompatibleMode="0"
MajorVer=1
MinorVer=0
RevisionVer=0
AutoIncrementVer=0
ServerSupportFiles=0
VersionComments="Windows Vista Registry Test - VB6"
VersionCompanyName=""
VersionFileDescription="Windows Vista Registry Test - VB6"
VersionLegalCopyright=""
VersionProductName="Windows Vista Registry Test - …
Run Code Online (Sandbox Code Playgroud)

vb6 resources uac manifest

16
推荐指数
3
解决办法
1万
查看次数

使用F#的Metro风格应用?

在Build 2011主题演讲和演示中,他们总是谈论C++,C#,Visual Basic和JavaScript.我不能用F#构建Metro风格的应用程序吗?或者可以肯定地说,如果它适用于C#,那么它也适用于F#吗?

f# microsoft-metro windows-8 visual-studio-2012

16
推荐指数
4
解决办法
3841
查看次数

16
推荐指数
2
解决办法
1708
查看次数

如何使用Javascript禁用输入字段?

我从Javascript开始,我写了这个函数:

function disableField() {
  if( document.getElementById("valorFinal").length > 0 ) ) {
    document.getElementById("cantidadCopias").disabled = true; 
  }
}
Run Code Online (Sandbox Code Playgroud)

如果填充第一个字段,则禁用名为cantidadCopias的第二个字段.

<label> <span>Valor final:</span>
  <input type="text" class="input_text" name="valorFinal" id="valorFinal" onkeydown="disableField()"/>
</label>
<label> <span>Cantidad de Copias:</span>
  <input type="text" class="input_text" name="cantidadCopias" id="cantidadCopias"/>
</label>
Run Code Online (Sandbox Code Playgroud)

但是当第一个字段填满时,它不会禁用第二个字段.

html javascript disabled-input

16
推荐指数
1
解决办法
8万
查看次数

无法更改simple_form中文本字段的高度

我试过了

  #Default size for text inputs.  
  config.default_input_size = 10
Run Code Online (Sandbox Code Playgroud)

来自config/initializers/simple_form.rb

我也试过了 <%= f.input :message, :input_html => {:size => 10} %>

但这些都不会改变我的文本字段的显示方式.

height ruby-on-rails textfield simple-form

16
推荐指数
4
解决办法
2万
查看次数

在Adobe Air中获取当前操作系统

我正在使用Adobe Flex/Air制作应用程序.我想知道是否有办法让Air应用程序运行的操作系统?

apache-flex air actionscript-3 flash-builder

15
推荐指数
3
解决办法
1万
查看次数

如何使用cron作业运行php文件

我每天都在使用cron作业在php页面上运行电子邮件计划.当我使用链接运行页面时,PHP代码工作正常.

现在,当我使用cron作业运行php脚本时,它也可以正常工作但是当我提出一些查询时,cron作业将无法理解链接.

例如:http://www.wetube.org/cron.php?id=01001所以现在如果我尝试使用cron job每天运行它,它就不起作用了.

但是,如果我们只是擦除查询它工作正常.你们知道任何使这个链接在cron工作的代码吗?

php cron

15
推荐指数
2
解决办法
5万
查看次数