我想在vista/windows 7中以编程方式杀死一个进程(我不确定两者之间的UAC实现是否存在重大问题以产生影响).
现在,我的代码看起来像:
if(killProcess){
System.Diagnostics.Process[] process = System.Diagnostics.Process.GetProcessesByName("MyProcessName");
// Before starting the new process make sure no other MyProcessName is running.
foreach (System.Diagnostics.Process p in process)
{
p.Kill();
}
myProcess = System.Diagnostics.Process.Start(psi);
}
Run Code Online (Sandbox Code Playgroud)
我必须这样做,因为我需要确保如果用户崩溃程序或突然退出,则在重新启动应用程序时重新启动此辅助进程,或者如果用户想要更改此辅助进程的参数.
该代码在XP中运行良好,但在Windows 7(我假设在Vista中)失败时出现"访问被拒绝"消息.从全能的Google告诉我的内容来看,我需要以管理员的身份运行我的杀戮程序以解决这个问题,但这只是一个弱点.另一个可能的答案是使用LinkDemand,但我不理解LinkDemand的msdn页面,因为它与进程有关.
我可以将代码移动到一个线程中,但是它有许多固有的其他困难,我真的不想发现它.
我"只是"一个业余爱好者程序员,但我发现随着我的程序变得越来越长,bug越来越烦人 - 而且更难跟踪.就在所有事情似乎都顺利进行的时候,会出现一些新的问题,似乎是自发的.我可能需要很长时间才能找出导致问题的原因.其他时候我会添加一行代码,它会破坏另一个单元中的某些东西.如果我认为一切运转良好,这会让人感到沮丧.
这对每个人来说都是常见的,还是更像新手呢?我听说过"单元测试","设计框架"以及各种其他概念,听起来会减少烦恼,使我的应用程序"健壮",一切都很容易理解:)
那么,对于接受过专业培训的人来说,这笔交易有多大错误?
谢谢 - Al C.
http://msdn.microsoft.com/en-us/library/bb351562.aspx 当您转到左侧的那个页面时,它会链接到该类的"成员"和"方法",但对我来说看起来一样.有区别吗?
我有一个PolygonList和一个Polygon类型,它们是std :: Points列表或点列表.
class Point {
public:
int x, y;
Point(int x1, int y1)
{
x = x1;
y = y1;
}
};
typedef std::list<Point> Polygon;
typedef std::list<Polygon> PolygonList;
// List of all our polygons
PolygonList polygonList;
Run Code Online (Sandbox Code Playgroud)
但是,我对引用变量和指针感到困惑.
例如,我希望能够在我的polygonList中引用第一个Polygon,并将一个新的Point推送到它.
所以我试图将polygonList的前面设置为一个名为currentPolygon的Polygon,如下所示:
Polygon currentPolygon = polygonList.front();
currentPolygon.push_front(somePoint);
Run Code Online (Sandbox Code Playgroud)
现在,我可以为currentPolygon添加点,但这些更改最终没有反映在polygonList中的同一个多边形中.是currentPolygon只是一个副本在polygonList前面的多边形的?当我稍后迭代polygonList时,我没有显示我添加到currentPolygon的所有点.
如果我这样做,它的工作原理:
polygonList.front().push_front(somePoint);
Run Code Online (Sandbox Code Playgroud)
为什么这些不相同,我如何创建物理前多边形的引用而不是它的副本?
我想从这些id中显示四(4)项的名称:我可以这样做吗?
SELECT item_name from items WHERE item_id IN ('001', '012', '103', '500')
Run Code Online (Sandbox Code Playgroud)
要么
SELECT item_name from items WHERE item_id = '001' or item_id = '012' or item_id = '103' or item_id = '500'
Run Code Online (Sandbox Code Playgroud)
响应所有答案
好吧,大多数答案说它有效,但它确实不起作用.这是我的代码:
$query = "SELECT `item_name` from items WHERE item_id IN('s001','a012','t103','p500')";
$result = mysql_query($query, $conn) or die (mysql_error());
$fetch = mysql_fetch_assoc($result) or die (mysql_error());
$itemsCollected = $fetch['item_name'];
echo $itemsCollected;
Run Code Online (Sandbox Code Playgroud)
这item_id是字母数字.
我刚开始使用Git,我想知道这是否是使用它的正确方法.我开始使用Rails应用程序:
rails newapp
Run Code Online (Sandbox Code Playgroud)
然后我做了:
cd newapp
git init
git add .
git commit -a
Run Code Online (Sandbox Code Playgroud)
那么在我的工作目录中初始化我的git是"正确的"吗?
我一直在研究Django中的应用程序.首先,为简单起见,我一直在使用sqlite3作为数据库.
但是,一旦我转移到PostgreSQL,我遇到了一个问题:一旦我清除了表,主键就不会重置.
这个应用程序是一个长时间(几周)播放的游戏.因此,每次新游戏开始时,所有数据都将从数据库中清除,然后添加新的随机数据.
我希望能够在1每次清理/重建游戏时从主键开始"重新开始" .
代码仍然按原样运行,但整数是描述游戏中对象的一种非常自然的方式.我想让每场新游戏从1开始,而不是在最后一场比赛停止的地方.
如何在PostgreSQL中重置主键计数器?请记住,我不需要保存表格中的数据,因为无论如何我都要擦除它.
我尝试使用 $function:foo 值和 get-item function:foo。所有尝试都成功修改了临时函数对象,但在重新分配给存储函数时(通过 $function:foo = ... 或 set-item function:foo ...),附加属性丢失。
以下是我尝试的结果(全部失败):
设置
$=>函数 foo { "foo" }
$=>$f = $函数:foo
$=>$f = $f | 添加成员注释属性栏 BARvalue -pass
$=>$f | 通用汽车*
类型名称:System.Management.Automation.ScriptBlock
名称 成员类型 定义
---- ---------- ----------
bar NoteProperty System.String bar=BARvalue
#1
$=>设置项函数:f $f -force $=>$函数:foo | 通用汽车* >
#2
$=>$函数:f = $f $=>$函数:foo | 通用汽车* >
#3
$=>$f = 获取项目函数:foo $=>$f | 通用汽车 类型名称:System.Management.Automation.FunctionInfo 名称 成员类型 定义 ---- ---------- ---------- 等于方法 System.Boolean Equals(Object obj) GetHashCode 方法 System.Int32 …
我是Java的初学者,我写的("FLASH").getbytes()是这样的serialport.
在我得到FLASH_OK回复后,我再次发送文件请求.之后我会得到回复,因为FILE_OK我已经将文件读到文件的末尾.
我没有得到如何做到这一点,所以请帮助我.
谢谢你的答复.
而不是使用
std::vector<Object> ObjectArray;
Run Code Online (Sandbox Code Playgroud)
我希望它是
MyArray<Object> ObjectArray;
Run Code Online (Sandbox Code Playgroud)
保留所有std :: vector方法.(比如push_back(),reserve(),...等)
但是,使用
typedef std::vector MyArray;
Run Code Online (Sandbox Code Playgroud)
不行.我应该使用模板吗?怎么样?
c# ×2
c++ ×2
core ×1
database ×1
debugging ×1
django ×1
git ×1
java ×1
kill ×1
msdn ×1
mysql ×1
pointers ×1
postgresql ×1
powershell ×1
primary-key ×1
process ×1
properties ×1
reference ×1
select ×1
serial-port ×1