谁能告诉我这段代码有什么问题?没有错误.一切都返回ERROR_SUCCESS但是在寄存器中看不到任何变化.
void Utils::writePath(LPCTSTR data)
{
HKEY hkey;
DWORD dwDisposition;
if(RegCreateKeyEx(HKEY_LOCAL_MACHINE,
TEXT("SOFTWARE\\aaTestCompany\\testApp"),
0, NULL, 0,
KEY_WRITE, NULL,
&hkey, &dwDisposition) == ERROR_SUCCESS)
{
long setRes = RegSetValueEx (hkey, "testPath", 0, REG_SZ, (LPBYTE)data, strlen(data)+1);
if (setRes == ERROR_SUCCESS) {
printf("Success writing to Registry.");
} else {
printf("Error writing to Registry.");
}
RegCloseKey(hkey);
}
else
MessageBox(NULL,"error","",0);
}
Run Code Online (Sandbox Code Playgroud) 我正在编写一个用于登录的简单加密系统,但我遇到了一个小问题.C#加密功能:
public static string EncryptString(string Message, string Passphrase)
{
byte[] Results;
System.Text.UTF8Encoding UTF8 = new System.Text.UTF8Encoding();
// Step 1. We hash the passphrase using MD5
// We use the MD5 hash generator as the result is a 128 bit byte array
// which is a valid length for the TripleDES encoder we use below
MD5CryptoServiceProvider HashProvider = new MD5CryptoServiceProvider();
byte[] TDESKey = HashProvider.ComputeHash(UTF8.GetBytes(Passphrase));
// Step 2. Create a new TripleDESCryptoServiceProvider object
TripleDESCryptoServiceProvider TDESAlgorithm = new TripleDESCryptoServiceProvider();
// Step 3. Setup …Run Code Online (Sandbox Code Playgroud) 如何在WPF的RichTextBox中获取当前行(并删除)?RichTextBox.GetLineFromCharIndex()在WinForms中没有有用的功能.
提前致谢.
CH
我在c#中编写了一些测试代码(使用WPF Form)来检查sendMessage/PostMessage是否有效.这是:
Process x = Process.GetProcessesByName("Any Apps")[0];
if (x == null) return;
MessageBox.Show(x.Id.ToString()); // always works
NativeMethods.SendMessage(x.MainWindowHandle, 0x100, 0x70, 0);//F1
NativeMethods.SendMessage(x.MainWindowHandle, 0x101, 0x70, 0);
Run Code Online (Sandbox Code Playgroud)
在任何地方查找进程工作,但是当我使用VS调试密钥运行应用程序时,sendingMessage/postingMessage从未起作用.有时我从桌面启动程序时有效,有时则不行.但是......有趣的是:在任何可用的机器上(带有XP的VM,另一台带有64位Windows 7的计算机,带有32位Windows 7的朋友计算机)可以快速而精细地工作.
有谁有同样的问题?Maby有人知道解决方案吗?提前致谢.