这是我的代码:
using (Process game = Process.Start(new ProcessStartInfo() {
FileName="DatabaseCheck.exe",
RedirectStandardOutput = true,
CreateNoWindow = true,
UseShellExecute = false }))
{
lblLoad.Text = "Loading";
int Switch = 0;
while (game.MainWindowHandle == IntPtr.Zero)
{
Switch++;
if (Switch % 1000 == 0)
{
lblLoad.Text += ".";
if (lblLoad.Text.Contains("...."))
lblLoad.Text = "Loading.";
lblLoad.Update();
game.Refresh();
}
}
Run Code Online (Sandbox Code Playgroud)
问题是,那个游戏.MainWindowHandle总是IntPtr.Zero.我需要找到运行过程的IntPtr以确认游戏是由启动器启动的,所以我让游戏发送它的IntPtr并让启动器响应它是否正常.但为此,我必须具体了解运行过程的IntPtr.
提前致谢!
我正在创建一个替换文本文件中的一些文本的工具.我的问题是File ReadAllLines将希伯来字符变成了Gibberish(奇怪的问号 )
有谁知道为什么会这样?请注意,我确实在游戏中有希伯来语等问题.而在记事本中,我无法保存希伯来语文档.我可以写希伯来字母但是当我保存时它会告诉我这有问题.
编辑 - 试过这个,但它只把希伯来语变成了常规问号,而不是"特殊"问号 -
string[] lines = File.ReadAllLines(fullFilenameDir);
byte[] htmlBytes = Encoding.Convert(Encoding.ASCII, Encoding.Unicode, Encoding.ASCII.GetBytes(String.Join("\r\n", lines)));
char[] htmlChars = new char[Encoding.Unicode.GetCharCount(htmlBytes)];
Encoding.Unicode.GetChars(htmlBytes, 0, htmlBytes.Length, htmlChars, 0);
Run Code Online (Sandbox Code Playgroud) 我正在开发一个桌面应用程序,它很像WinDirStat或voidtools'Everything - 它映射硬盘驱动器,即从目录树中创建一个深层嵌套的字典.
然后,桌面应用程序应将目录树存储在某种数据库中,以便可以使用Web应用程序从根目录深度级别浏览它们.
假设两个应用程序暂时在同一台机器上本地运行.
我想到的问题是如何构建数据以及应该使用什么数据库,考虑:1)RAM消耗应该合理2)准备好在Web应用程序中查看目录所需的时间应该是最小
PS - 我的初始方法是将每个文件系统节点分别序列化为JSON并将每个节点插入到Mongo中,并将对象引用链接到它们的子节点.这样,Web应用程序可以根据用户需求轻松加载数据.但是,我担心为Mongo制作这么多(平均一百万个)独立插件需要花费很多时间; 如果我进行批量插入,这意味着我必须将每个批量保留在内存中.
我还考虑将整个树转储为一个深度嵌套的JSON,但数据太大而不能成为Mongo文档.GridFS可以用来存储它,但是我会在web应用程序中加载整个树,即使深层节点可能不感兴趣.
我目前在我的C#处理程序(.ashx)中使用context.Request.QueryString,因为到目前为止我只需要处理GET帖子.
如果我通过POST方法发送了一个JSON对象怎么办?我知道我应该反序列化发送的内容,但我的观点是 - 我怎么知道发送源是发送POST还是GET.
为什么?因为我想将处理程序拆分为POST相关函数(通常需要安全性的东西)和更原始的GET相关函数(检索公共信息等)
如果重要,我的代码现在看起来像这样(并且它还没有准备好正确处理POST).
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "application/json";
JavaScriptSerializer jss = new JavaScriptSerializer();
// Wanna know POST was used here, so I can deserialize the sent JSON data
// ----
// Handling GET here, good and working
if (context.Request.QueryString["aname"] != null
&& context.Request.QueryString["type"] != null)
{
string adminName = context.Request.QueryString["aname"];
if(adminName == "test") { // Return some JSON object }
}
}
Run Code Online (Sandbox Code Playgroud) 我以前从未使用过涉及多个表的选择查询,现在当我这样做时,我遇到了从中获取信息的麻烦DataTable.
我有这个问题:
SELECT *
FROM [Usergroups], [Groups]
WHERE [Usergroups.UserID] = @name
AND [Groups.GroupID] = [Usergroups.GroupID]
Run Code Online (Sandbox Code Playgroud)
这就是我将返回值放入DataTable的方法:
DataTable groupsTable = new DataTable();
groupsTable.Load(sqlCmd.ExecuteReader());
Run Code Online (Sandbox Code Playgroud)
现在,我如何指定我DataTable想从哪个表中获取行?例如,这是我在涉及的多个表之前所做的事情:
string groupName = groupsTable.Rows[0]["Name"];
Run Code Online (Sandbox Code Playgroud)
我找不到任何有此类信息的资源,但我知道这是一个基本问题.提前致谢.
我正在使用JQuery制作一个非常基本的动画.基本上我所拥有的是DIV,其宽度为60%,高度为80%,并且包含手册.我的目标是,当您浏览手册中的页面时,当前页面会向上移动并消失,下一页从底部开始.
我足够接近,但有些事情是错的,我无法理解如何解决它 - 页面DIV在容器外可见.他们的顶级财产设定为110%但我可以看到它没有生效.他们的位置只受上面菜单表的影响.
所以我的问题,实际上是 - 如何在容器外部使DIV不可见,但不改变整个DIV的可见性或显示,所以在向上移动时会看到文本 - 但只有放在容器上的文本和不在它之外.
.manualPage {
color:rgba(241, 241, 241,1.0);
top:110%;
text-align:left;
left:0%;
cursor:default;
z-index:30;
font-family: "Open Sans", sans-serif;
font-size:11pt;
width:100%;
height:100%;
}
.BigWindow {
position:absolute;
width:60%;
height:80%;
top:10%;
display:inline-block;
left:-70%;
background-repeat:repeat;
color:rgba(241, 241, 241,1.0);
font-family: "Open Sans", sans-serif;
font-size:12pt;
text-align:center;
cursor:default;
z-index:30;
}
Run Code Online (Sandbox Code Playgroud)
注意BigWindow是容器,manualPage是页面.
这是函数,但我认为CSS问题是首先要解决的问题:
var currentPage = -1;
function setManualPage(num) {
if ($('#manualMenu').css('display') != 'none')
$('#manualMenu').fadeOut(750);
if (currentPage != -1) {
$('#page' + currentPage).animate({ top: '-100%' }, screen.availHeight / 2, function () { $('#page' …Run Code Online (Sandbox Code Playgroud)