问题列表 - 第27771页

Windows Vista/Windows 7权限:SeDebugPrivilege和OpenProcess

我能够找到的有关升级到我需要的适当权限的所有内容都与我当前的方法一致,但问题依然存在.我希望也许某人有一些Windows Vista/Windows 7内部体验可能会在只有黑暗的地方发光.我相信这会很长,但请耐心等待.

上下文

我正在开发一个需要访问当前机器上其他进程内存的应用程序.显然,这需要管理员权限.它还要求SeDebugPrivilege(不,它不是拼写错误SetDebugPrivilege),我相信自己要正确获取,尽管我怀疑是否有更多的特权是不必要的,因此我的问题的原因.到目前为止,Code已成功应用于所有版本的Windows XP,以及我的测试Vista 32位和Windows 7 64位环境.

处理

  • 程序将始终以管理员权限运行.在这篇文章中可以假设这一点.
  • 升级当前流程Access Token以包含SeDebugPrivilege权限.
  • 使用EnumProcesses该系统上创建当前PID列表
  • 使用OpenProcess具有PROCESS_ALL_ACCESS访问权限的句柄打开
  • 使用ReadProcessMemory读取其他进程的内存.

问题:

在开发和个人测试期间,一切都运行良好(包括Windows XP 32和64,Windows Vista 32和Windows 7 x64).但是,在同事的Windows Vista(32位)和Windows 7(64位)计算机上进行测试部署期间,似乎存在权限/权限问题,导致OpenProcess一般Access Denied错误失败.当以受限用户身份运行时(如预期的那样)以及以管理员身份明确运行(右键单击?以管理员身份运行以及从管理员级别命令提示符运行时)都会发生这种情况.

但是,在我的测试环境中,这个问题对我自己来说是不可再现的.我亲眼目睹了这个问题,所以我相信这个问题存在.我能够在实际环境和我的测试环境之间辨别的唯一区别是,在UAC提示符下使用域管理员帐户时发生了实际错误,而我的测试(无错误地工作)使用了本地管理员帐户. UAC提示.

看来虽然使用的凭据允许UAC"以管理员身份运行",但该流程仍未获得能够OpenProcess在另一个进程上运行的正确权限.我对Vista/Windows 7的内部结构不太熟悉,知道这可能是什么,我希望有人知道可能是什么原因.

踢球者

报告此错误的人,以及谁的环境可以定期重现此错误,有一个小应用程序,RunWithDebugEnabled其名称是一个小的引导程序,似乎升级其自己的权限,然后启动传递给它的可执行文件(从而继承升级的特权).使用此程序运行时,在UAC提示符下使用相同的域管理员凭据,程序可以正常工作,并且能够成功调用OpenProcess并按预期运行.

因此,这肯定是获取正确权限的问题,并且已知域管理员帐户应该能够访问正确权限的管理员帐户.(显然获得这个源代码会很棒,但如果可能的话,我不会在这里).

笔记

如上所述,失败OpenProcess尝试报告的错误是Access Denied.根据MSDN文档OpenProcess:

如果调用者启用了SeDebugPrivilege特权,则无论安全描述符的内容如何,​​都会授予所请求的访问权限.

这让我相信在这些条件下可能存在以下问题:(1)获取SeDebugPrivileges …

c++ windows privileges uac openprocess

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

"你好,WebView"的例子

我是android开发的新手,我正在试用官方android站点中的WebView示例.

http://developer.android.com/guide/tutorials/views/hello-webview.html

但我做他们说的一切......这很简单:我创建项目,编辑布局文件,然后我添加代码等等.没有问题构建...但是当我在模拟器中启动应用程序时我才刚刚得到黑屏.就像布局是空的一样......就像没有创建WebView一样.

我究竟做错了什么?

android webview android-webview

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

在web.config文件中使用HTML标记

我想在我的主页(default.aspx)中显示一条消息,这对于我的网络应用程序的每次"安装"都是不同的.我想避免调用数据库来显示此消息..所以我想使用web.config来存储这样的东西

<add key="WelcomeString" value="lorem ipsus <b>doloret sit amen</b>" />
Run Code Online (Sandbox Code Playgroud)

但是我注意到我不能在web.config中使用html标记...是否有更好的方法,或者有没有办法将html标记插入到web.config中?再次感谢堆栈溢出大师...我正在向你学习很多东西!

asp.net web-config

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

并行计算大数组的中位数

我被问过这个问题一次,仍然无法弄清楚:

你有一个N整数数组,其中N很大,比如十亿.您想要计算此数组的中值.假设您有m+1机器(m工人,一个主人)来分配作业.你会怎么做呢?

由于中位数是一个非线性算子,你不能只找到每台机器的中位数,然后取这些值的中位数.

parallel-processing median

2
推荐指数
1
解决办法
2556
查看次数

何时使用AtomicReference(Java)?真的有必要吗?

我已多次使用AtomicLong但我从未需要使用AtomicReference

似乎AtomicReference做了(我从另一个stackoverflow问题复制了这个代码):

public synchronized boolean compareAndSet(List<Object> oldValue, List<Object> newValue) { 
    if (this.someList == oldValue) {
        // someList could be changed by another thread after that compare,
        // and before this set
        this.someList = newValue;
        return true;
    }
    return false;
}
Run Code Online (Sandbox Code Playgroud)

要么

public synchronized boolean compareAndSet(List<Object> oldValue, List<Object> newValue) { 
    if (this.someList == oldValue || this.someList.equals(oldValue)) {
        // someList could be changed by another thread after that compare,
        // and before this set
        this.someList = newValue;
        return true;
    }
    return false; …
Run Code Online (Sandbox Code Playgroud)

java concurrency atomic

6
推荐指数
1
解决办法
7430
查看次数

字母计数字符串

Python newb在这里.我试图计算给定字符串中字母"a"的数量.代码如下.它在字符串"banana"中保持返回1而不是3.任何输入赞赏.

def count_letters(word, char):
    count = 0
    while count <= len(word):
        for char in word:
            if char == word[count]:
                count += 1
            return count



print count_letters('banana','a')
Run Code Online (Sandbox Code Playgroud)

python

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

现代C++编译器的有效优化策略

我正在研究对性能至关重要的科学代码.该代码的初始版本已经编写和测试,现在,有了分析器,现在是时候从热点开始剃须周期了.

众所周知,编译器现在可以更有效地处理一些优化,例如循环展开,而不是手工编程的程序员.哪些技术还值得?显然,我会通过一个分析器来运行我尝试的所有内容,但是如果有传统的智慧关于什么往往有效,哪些无效,这将为我节省大量时间.

我知道优化非常依赖于编译器和体系结构.我正在使用针对Core 2 Duo的英特尔C++编译器,但我也对gcc或"任何现代编译器"的效果感兴趣.

以下是我正在考虑的一些具体想法:

  • 用手工卷取代STL容器/算法有什么好处?特别是,我的程序包括一个非常大的优先级队列(当前是a std::priority_queue),其操作占用了大量的总时间.这是值得研究的事情,还是STL实施可能是最快的?
  • 类似地,对于std::vector需要大小未知但上限相当小的s,用静态分配的数组替换它们是否有利可图?
  • 我发现动态内存分配通常是一个严重的瓶颈,消除它会导致显着的加速.因此,我很有兴趣通过值返回大型临时数据结构与通过指针返回相对于通过引用传递结果的性能权衡.有没有办法可靠地确定编译器是否会为给定方法使用RVO(假设调用者当然不需要修改结果)?
  • 编译器的缓存感知如何?例如,是否值得研究重新排序嵌套循环?
  • 鉴于该程序的科学性,浮点数被用于各处.我的代码中的一个重要瓶颈曾经是从浮点到整数的转换:编译器会发出代码来保存当前的舍入模式,更改它,执行转换,然后恢复旧的舍入模式---即使程序中没有任何内容永远改变了舍入模式!禁用此行为会大大加快我的代码速度.我应该注意哪些与浮点相关的类似问题?
  • C++被单独编译和链接的一个结果是编译器无法进行看起来非常简单的优化,例如在循环的终止条件下移动方法调用如strlen().有没有像我这样的优化,因为它们不能由编译器完成,必须手工完成?
  • 另一方面,我是否应该避免使用任何技术,因为它们可能会干扰编译器自动优化代码的能力?

最后,将某些类型的答案扼杀在萌芽状态:

  • 我知道优化在复杂性,可靠性和可维护性方面具有成本.对于此特定应用,提高性能值得这些成本.
  • 我知道最好的优化通常是改进高级算法,而且这已经完成了.

c++ optimization x86

45
推荐指数
6
解决办法
4233
查看次数

有没有办法在PHP中检查目录是否是符号链接?

我有符号链接到某些目录,因为目录的名称有非英文字符,我厌倦了试图让apache的重写规则匹配.对于这个问题,有一个问题是对utf-8字符和apache2重写规则的麻烦,任何人都想要这样做,并且从很多人想看到这个问题的一般解决方案来看,但同时我做了一个简单的问题ascii符号链接到这些违规目录中的每一个.现在,重写规则又回到了alpha和_和 - 并且我的安全问题更少,它加载了我想要的资源.但是我仍然需要实际的目标目录名来进行显示.我用谷歌搜索"PHP目录信息,PHP符号链接",但没有找到任何东西.我需要做这样的事情:

if (is_symlink($myResDirName)) {
    $realDirName = follow_symlink($myResDirName);
}
Run Code Online (Sandbox Code Playgroud)

php function symlink-traversal

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

如何循环使用FormCollection来检查文本框是否有值?

我有一个搜索页面,有6个文本框,我作为FormCollection传递给控制器​​中的操作.如果文本框中没有值,我不想搜索记录.

有没有办法循环遍历FormCollection中的所有文本框,以检查哪些文本框中有值?

我是学院的学生,这个项目是我暑期体验计划的一部分.我意识到这是一个新手问题:)谢谢!

asp.net-mvc

5
推荐指数
1
解决办法
9384
查看次数

什么相当于PHP的".="在Javascript中,为变量添加一些东西..?

在PHP中,您可以:

$myvar = "Hello";
$myvar .= " world!";
echo $myvar;
Run Code Online (Sandbox Code Playgroud)

输出是:Hello world!

我怎么能在Javascript/jQuery中做到这一点..?

javascript php jquery

4
推荐指数
1
解决办法
419
查看次数