windows上的PCREDENTIALW儲存使用者名稱和密碼
儲存使用者名稱和密碼
標頭檔案:WinCred.h
主要是CredRead()和CredWrite()
BOOL CredWrite(
_In_ PCREDENTIAL Credential,
_In_ DWORD Flags
);
BOOL CredRead(
_In_ LPCTSTR TargetName,
_In_ DWORD Type,
_In_ DWORD Flags,
_Out_ PCREDENTIAL *Credential
);
下面是記錄的例子:
bool SaveAccount(const std::string& username, const std::string& password)
{
char password_chars[255] = { 0 };
wchar_t username_wstrs[255] = { 0 };
wchar_t target_name_wstrs[1024] = { 0 };
// password
strcpy(password_chars, password.c_str());
DWORD cbCreds = 1 + strlen(password_chars);
// username
std::wstring username_wstr = nbase::UTF8ToUTF16(username);
wcscpy(username_wstrs, username_wstr.c_str());
// target name
std::wstring target_name_wstr = L"MyApp";
wcscpy(target_name_wstrs, target_name_wstr.c_str());
CREDENTIALW cred = { 0 };
cred.Type = CRED_TYPE_GENERIC;
cred.TargetName = target_name_wstrs;
cred.CredentialBlobSize = cbCreds;
cred.CredentialBlob = (LPBYTE)password_chars;
cred.Persist = CRED_PERSIST_LOCAL_MACHINE;
cred.UserName = username_wstrs;
return ::CredWriteW(&cred, 0);
}
bool GetAccount(std::string& username, std::string& password)
{
wchar_t username_wstrs[255] = { 0 };
wchar_t target_name_wstrs[1024] = { 0 };
// target name
std::wstring target_name_wstr = L"MyApp";
PCREDENTIALW pcred;
BOOL success = false;
do {
success = ::CredReadW(target_name_wstr.c_str(), CRED_TYPE_GENERIC, 0, &pcred);
if (!success)
{
break;
}
username = nbase::UTF16ToUTF8(pcred->UserName);
std::string pwd((char*)pcred->CredentialBlob, pcred->CredentialBlobSize);
password = pwd;
::CredFree(pcred);
return true;
} while (0);
return false;
}
相關推薦
windows下利用python 2.7獲取電腦上所有的wifi名稱和密碼
# -*- coding: UTF-8 -*- import os import sys reload(sys) sys.setdefaultencoding('utf-8') # 定義一個函式checkWIFI,獲取電腦連線過的所有wifi名稱和密碼,結果以列表形式返回
Windows XP / 7 中刪除訪問區域網共享時儲存的使用者名稱和密碼
當我們訪問網路計算機上的共享目錄時,提示要輸入使用者名稱和密碼,可以勾選儲存密碼,此後再訪問該共享目錄的時候,或者是其他需要Windows賬戶認證的時候,就會直接進入,不需要再輸入密碼了。 如果我們想更換個使用者名稱登陸該計算機,或者對方計算機的使用者名稱和密碼已經更改了
windows的取消FTP自動儲存的使用者和密碼
之前對同一ftp的訪問,發現檔案資源管理器預設記錄了同一地址的第一次使用者名稱和密碼。 這樣十分不便,其實windows是預設在Internet選項中自動記錄了表單的使用者名稱和密碼。 取消設定: IE -> Internet選項 -> 內容 ->
在Visualsvn Server上創建svn賬號和密碼
性能 方便 def 賬號 linux package load ogr cimage VisualSVN Server是一個集成的svn服務端工具,是一款svn服務端不可多得的好工具。可以先安裝好VisualSVN Server後,運行VisualSVN Serv
VMware上centos系統忘記賬號和密碼解決
忘記 ref inux clas 字母 log 直接 linux版本 修改 轉載: https://blog.csdn.net/wyx_wyl/article/details/78246907 我們有時會忘記虛擬機上的登陸密碼,今天來說一下怎樣修改我們的密碼.應該對大多數
樹莓派 | 修改樹莓派3熱點的名稱和密碼
開篇 在網上找了很久也沒找到怎麼修改熱點的名稱和密碼有關的資料,恰好自己發現了hostapd,此篇獻給像我這樣的小白。 教程 前提是使用的Yahboom_raspberrypi_8G_Router.img這個映象,一個自帶熱點的映象。 一、設定樹莓派3熱點的名稱和密
如何在Windows上製作一個包含.lib和.dll的Rust Crate包
製作釋出Rust Crate包 建立Rust lib工程: cargo new dbr --lib 在lib.rs中新增: pub mod reader; reader模組對應reader.rs檔案,所以需要建立reader.h, reader.c: //
Python之——獲取電腦連線過的所有wifi名稱和密碼
不多說,上程式碼: # -*- coding: UTF-8 -*- import os import sys reload(sys) sys.setdefaultencoding('utf-8') # 定義一個函式checkWIFI,獲取電腦連線過的所有wifi名
linux上zabbix監控ssh登入和密碼嘗試爆破
Linux的上ZABBIX監控SSH登入和密碼嘗試爆破 一,準備工作 chmod 644 / var / log / secure 二,自定義監控 vim /etc/zabbix/zabbix_agentd.d/userparamete
製作一個安卓介面,可以進行密碼和賬號的判斷,有用來儲存輸入賬號和密碼的類,用來在其他類中呼叫
首先附上安卓介面圖和完整版下載地址: 下載地址:https://download.csdn.net/download/qq_39343904/10881646 &nb
在Windows上安裝 Python,Pip 和 virtualenv
Python 虛擬環境的作用,有時候有多個專案,不同的專案對應不同的python版本和第三方庫,為了方便開發,避免頻繁地安裝解除安裝,就使用虛擬環境,不同的專案對應的python配置不同。 然後我的理解,PC上似乎可以在不同的路徑裝多個不同的pyhon版本,建
Win10系統修改主機名、用戶名稱和密碼、以及C盤中的用戶文件夾名
.cn nis windows10 jpg 新建 修改主機名 寫在前面 image 用戶 寫在前面 近期重新安裝了Ubuntu16.04系統,同時也修改了Windows10系統的用戶名、密碼,還有C盤用戶文件夾名稱。對於Linux和windows系統來說,修改名稱基
windows上RSA密鑰生成和使用
follow utf 生成 product 參考 pro water orm idt 一,下載安裝windows平臺openssl密鑰生成工具,執行安裝目錄bin下的"openssl.exe",執行後彈出命令窗口如下 運行 二,生成私鑰 輸入"genrsa -ou
Windows上如何安裝NodeJs,Protobuf和MongoDb
1.先去官網下載nodejs.msi的安裝包和mongodb的壓縮檔案 2.安裝nodejs .. 我選擇的路徑是 D:\jswork, 安裝好以後執行下cmd 輸入 C:\Documents and Settings\username>node -v v0.10.
如何去掉網頁上電腦記憶的使用者名稱和密碼?
手動清除電腦痕跡當然可以,只是操作起來麻煩,又容易漏掉一些。找點資料給你: 1.清除最近使用過的文件記錄 以Windows XP為例,右鍵點選“開始”按鈕,選擇“屬性”,在彈出的設定工作列和開始選單屬性對話窗中點“自定義”按鈕,在“自定義開始選單”對話方塊中的“高階”標籤下點“清除列表”。若要讓系統永不自作多
【轉】在Windows上配置並整合PHP和MySQL經典教程
在為使用者提供動態內容方面,PHP和MySQL是一個強大的組合。這些年來,這兩項產品已經跨越了它們最初的應用舞臺,現在,一些世界上最繁忙的網站也在應用它們。雖然它們當初都是開源軟體,只能在UNIX/Linux上執行,但經過相當一段時期的發展,它們已能在Windows平臺上執
windows上的PCREDENTIALW儲存使用者名稱和密碼
儲存使用者名稱和密碼 標頭檔案:WinCred.h 主要是CredRead()和CredWrite() BOOL CredWrite( _In_ PCREDENTIAL Credential
Windows客戶端開發--通過CREDENTIAL儲存使用者名稱和密碼
做windows客戶端,尤其是c/s開發,幾乎都要接觸到使用者的登入。需要使用者名稱和密碼,那麼我們往往要對使用者名稱和密碼就行儲存。方案1:寫入ini配置檔案 用過配置檔案儲存使用者名稱和密碼,密碼肯定是不能實明文了,需要採用一定的加密演算法。 但是,這是最大的麻煩
在本地電腦上儲存GitHub賬號資訊,不需要每次提交版本時都輸入使用者名稱和密碼
第一步:在%HOME%目錄中,一般為C:\users\Administrator,也可以是你自己建立的系統使用者名稱目錄,檔名為.git-credentials,由於在Window中不允許直接建立以"."開頭的檔案,所以需要藉助git bash進行,開啟git bash客戶端
Windows上破解MySQL密碼
破解 mysql破解 數據庫破解 1.打開服務Win+R輸入service.msc 找到MySQL服務停止即可2.打開cmd進入到MySQL的bin文件夾輸入 mysqld -nt --skip-grant-tables 直接回車,會顯示下面類似字符140317 13:23:11 [Warnin