導航:首頁 > 五金知識 > hw工具箱

hw工具箱

發布時間:2022-09-29 08:05:40

1. HWtools是什麼公司的軟體

HWtools是華為公司的軟體
HWTOOL華為工具箱免費版是一款工具箱軟體,officeba免費提供HWTOOL華為工具箱免費版下載,更多HWTOOL華為工具箱免費版相關版本就在officeba。
HWTOOL華為工具箱免費版是一款專業對於華為榮耀手機開發設計的一款十分功能強大的輔助軟體,應用這款pc軟體能夠輕輕鬆鬆的對華為榮耀手機開展一鍵刷機進而使你的手機可以輕輕鬆鬆地拆換升級。

2. 誰知道第五人格的往昔許願碼如何獲得

這個是需要兌換的,如果你沒有顯示兌換證明你沒資格擁有,多努力吧。許願碼:BFZ9AHW3S1K ,DGS267HGV1,WVJ1FRMVG1K。願望碼:要交換禮品袋,要收到禮品袋交換碼,在牆上輸入自己的交換碼,直接收到交換的禮品袋。這個夏季禮盒是為開學季准備的,裡面有價值888英鎊的傑克玫瑰手杖和其他線索。

一、了解技能和天賦

艾瑪找到了那個特別的人,現在她可以在平靜中使用她完美的園藝技能和天賦了。也許親愛的稻草人先生需要一些裝飾,因為那根已經腐爛的深棕色的稻草,還有一頂新帽子……當然,她不僅僅是一個漂亮的女孩,但是,嘿,裝飾你的夢中情人有什麼錯呢?只要有足夠的錢就行。由於園丁熟悉機械他非常適合破譯。

最後,游戲中最需要的皮膚物品,以及其他物品,都可以通過禮品袋交換,禮品袋有使用時間,也有接收方式。

3. 華為手機中如何刪除已備份的資料

到手機內存或SD卡里的HWbackup文件夾里刪除,方法:

1.打開文件管理器;

2.點擊本地,找到手機內存或者SD卡;

3.進入後,找到HWbackup文件夾即可;

華為手機是國內一家中型手機生產商,擁有龐大的人力資源部,手機產品、銷售一體化,2015年華為入選Brand Z全球最具價值品牌榜百強,位列科技領域品牌排名第16位。問題一:華為手機備份後,想要刪掉備份文件怎樣操作。
到手機內存或SD卡里的HWbackup文件夾里刪除,方法:
打開文件管理器;
點擊【本地】,找到手機內存或者SD卡;
進入後,找到HWbackup文件夾即可

問題二:華為手機如何刪除備份
首先將所備份的資料還原出來,進行著設置就沒有問題的。
保證設置下就將資料穩定的還原出來設置了。
還是應用寶或者谷歌軟體上的工具就可以的了。
穩定的設置下就成功操作著讓手機上穩定的操作就可以的了。
順暢的安裝著到手機上就可以的了。
將資料還原出來設置下就成功的進行著資料還原之後設置著了。

問題三:華為手機中如何刪除已備份的資料?
到手機內存或SD卡里的HWbackup文件夾里刪除,方法:
打開文件管理器;
點擊【本地】,找到手機內存或者SD卡;
進入後,找到HWbackup文件夾即可。

問題四:華為6手機備份的文件去哪刪除
首先將備份的資料還原到手機上,在操作shanchu
就可以了。
其實手機上備份的資料是很容易出現問題的、
你要是想備份資料,建議你去應用寶上備份。
可以將資料備份到電腦上的。
我覺得備份到電腦上總是要比手機上穩定的。
你就安裝個應用寶的軟體到電腦上,連接上手機就行了,就可以進行備份了。
點擊上面顯示的資料還原就可以了。

問題五:華為p7手機怎麼把備份的內容刪除呢
你找個是備份到哪呢?備份到了哪直接刪除不就好了嗎
像我就是自己備份就是用應用寶先備份到電腦上
就用數據線連好手機和電腦
然後打開手機的USB調試
在應用寶的工具箱里就能備份了呢
查看起來也是方便點

問題六:華為手機的備份怎麼刪除
如果備份在本地:到手機內存或SD卡里的HWbackup文件夾里刪除,方法:打開文件管理器;點擊【本地】,找到手機內存或者SD卡;進入後,找到HWbackup文件夾即可
如果備份在雲端,請登入www.hicloud.com

問題七:華為手機怎麼關閉備份
打開手機設置--應用程序上面找到備份軟體設置關閉就可以。
手機上面的資料最好是備份到電腦上。
安裝應用寶軟體來備份資料。
首先從手機上選擇好資料,然後點擊資料備份。
從而就能成功把資料備份了。

問題八:華為手機是如何用手機刪除雲備份
也是需要將資料先還原出來然後在shanchu的呢。所以
就需要進行下用比較穩定的工具了。
一般在雲端備份的資料是經常出現問題的呢。
備份著手機上的資料到電腦上就可以了。
首先安裝上PC版應用寶軟體到電腦上來進行下資料備份呢。
而且還原的時候也是連接手機到電腦上來還原到手機上呢。

問題九:怎樣刪除華為3手機里的備份
這個可以恢復了在刪除就可以了,如果您確定自己手機備份的話,您就可以在總的文件里找到您已經備份過的東西了,找到就可以刪除了。
我下載經常用的是騰訊手機管家備份一些有用的東西從來沒出現過差錯,
所以您可以試試騰訊手機管家的手機備份,
說了這么多真心想要幫到您,望採納謝謝。

問題十:華為榮耀4c手機更新系統備份的怎麼刪除
樓主要是想刪除備份的話直接找到備份包然後刪掉就可以了,華為的話在手機系統設置裡面有一個備份與重置,在裡面可以看到一個從SD卡中恢復就可以找到備份包,點擊刪掉就可以了,如果是用手機自帶的軟體備份的就會在這里,如果不是手機自帶的而是雲端的話你需要登陸雲端去找到並刪除,如果是電腦的話類似,我備份用的是電腦版的應用寶,這個不僅備份功能強大,可以備份許多信息,還因為他可以自己指定路徑,不需要的時候很容易找到並刪除

4. delphi 創建系統服務啟動時出錯

網上找的,你看看應該有幫助吧,共同學習一下。

Windows 2000/XP和2003等支持一種叫做"服務程序"的東西.程序作為服務啟動有以下幾個好處:

(1)不用登陸進系統即可運行.
(2)具有SYSTEM特權.所以你在進程管理器裡面是無法結束它的.

筆者在2003年為一公司開發機頂盒項目的時候,曾經寫過課件上傳和媒體服務,下面就介紹一下如何用Delphi7創建一個Service程序.
運行Delphi7,選擇菜單File-->New-->Other--->Service Application.將生成一個服務程序的框架.將工程保存為ServiceDemo.dpr和Unit_Main.pas,然後回到主框架.我們注意到,Service有幾個屬性.其中以下幾個是我們比較常用的:

(1)DisplayName:服務的顯示名稱
(2)Name:服務名稱.

我們在這里將DisplayName的值改為"Delphi服務演示程序",Name改為"DelphiService".編譯這個項目,將得到ServiceDemo.exe.這已經是一個服務程序了!進入CMD模式,切換致工程所在目錄,運行命令"ServiceDemo.exe /install",將提示服務安裝成功!然後"net start DelphiService"將啟動這個服務.進入控制面版-->管理工具-->服務,將顯示這個服務和當前狀態.不過這個服務現在什麼也幹不了,因為我們還沒有寫代碼:)先"net stop DelphiService"停止再"ServiceDemo.exe /uninstall"刪除這個服務.回到Delphi7的IDE.

我們的計劃是為這個服務添加一個主窗口,運行後任務欄顯示程序的圖標,雙擊圖標將顯示主窗口,上面有一個按鈕,點擊該按鈕將實現Ctrl+Alt+Del功能.

實際上,服務程序莫認是工作於Winlogon桌面的,可以打開控制面板,查看我們剛才那個服務的屬性-->登陸,其中"允許服務與桌面交互"是不打鉤的.怎麼辦?呵呵,回到IDE,注意那個布爾屬性:Interactive,當這個屬性為True的時候,該服務程序就可以與桌面交互了.

File-->New-->Form為服務添加窗口FrmMain,單元保存為Unit_FrmMain,並且把這個窗口設置為手工創建.完成後的代碼如下:

unit Unit_Main;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, SvcMgr, Dialogs, Unit_FrmMain;

type
TDelphiService = class(TService)
procere ServiceContinue(Sender: TService; var Continued: Boolean);
procere ServiceExecute(Sender: TService);
procere ServicePause(Sender: TService; var Paused: Boolean);
procere ServiceShutdown(Sender: TService);
procere ServiceStart(Sender: TService; var Started: Boolean);
procere ServiceStop(Sender: TService; var Stopped: Boolean);
private
{ Private declarations }
public
function GetServiceController: TServiceController; override;
{ Public declarations }
end;

var
DelphiService: TDelphiService;
FrmMain: TFrmMain;
implementation

{$R *.DFM}

procere ServiceController(CtrlCode: DWord); stdcall;
begin
DelphiService.Controller(CtrlCode);
end;

function TDelphiService.GetServiceController: TServiceController;
begin
Result := ServiceController;
end;

procere TDelphiService.ServiceContinue(Sender: TService;
var Continued: Boolean);
begin
while not Terminated do
begin
Sleep(10);
ServiceThread.ProcessRequests(False);
end;
end;

procere TDelphiService.ServiceExecute(Sender: TService);
begin
while not Terminated do
begin
Sleep(10);
ServiceThread.ProcessRequests(False);
end;
end;

procere TDelphiService.ServicePause(Sender: TService;
var Paused: Boolean);
begin
Paused := True;
end;

procere TDelphiService.ServiceShutdown(Sender: TService);
begin
gbCanClose := true;
FrmMain.Free;
Status := csStopped;
ReportStatus();
end;

procere TDelphiService.ServiceStart(Sender: TService;
var Started: Boolean);
begin
Started := True;
Svcmgr.Application.CreateForm(TFrmMain, FrmMain);
gbCanClose := False;
FrmMain.Hide;
end;

procere TDelphiService.ServiceStop(Sender: TService;
var Stopped: Boolean);
begin
Stopped := True;
gbCanClose := True;
FrmMain.Free;
end;

end.

主窗口單元如下:

unit Unit_FrmMain;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, ShellApi, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;

const
WM_TrayIcon = WM_USER + 1234;
type
TFrmMain = class(TForm)
Timer1: TTimer;
Button1: TButton;
procere FormCreate(Sender: TObject);
procere FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procere FormDestroy(Sender: TObject);
procere Timer1Timer(Sender: TObject);
procere Button1Click(Sender: TObject);
private
{ Private declarations }
IconData: TNotifyIconData;
procere AddIconToTray;
procere DelIconFromTray;
procere TrayIconMessage(var Msg: TMessage); message WM_TrayIcon;
procere SysButtonMsg(var Msg: TMessage); message WM_SYSCOMMAND;
public
{ Public declarations }
end;

var
FrmMain: TFrmMain;
gbCanClose: Boolean;
implementation

{$R *.dfm}

procere TFrmMain.FormCreate(Sender: TObject);
begin
FormStyle := fsStayOnTop; {窗口最前}
SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW); {不在任務欄顯示}
gbCanClose := False;
Timer1.Interval := 1000;
Timer1.Enabled := True;
end;

procere TFrmMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose := gbCanClose;
if not CanClose then
begin
Hide;
end;
end;

procere TFrmMain.FormDestroy(Sender: TObject);
begin
Timer1.Enabled := False;
DelIconFromTray;
end;

procere TFrmMain.AddIconToTray;
begin
ZeroMemory(@IconData, SizeOf(TNotifyIconData));
IconData.cbSize := SizeOf(TNotifyIconData);
IconData.Wnd := Handle;
IconData.uID := 1;
IconData.uFlags := NIF_MESSAGE or NIF_ICON or NIF_TIP;
IconData.uCallbackMessage := WM_TrayIcon;
IconData.hIcon := Application.Icon.Handle;
IconData.szTip := 'Delphi服務演示程序';
Shell_NotifyIcon(NIM_ADD, @IconData);
end;

procere TFrmMain.DelIconFromTray;
begin
Shell_NotifyIcon(NIM_DELETE, @IconData);
end;

procere TFrmMain.SysButtonMsg(var Msg: TMessage);
begin
if (Msg.wParam = SC_CLOSE) or
(Msg.wParam = SC_MINIMIZE) then Hide
else inherited; // 執行默認動作
end;

procere TFrmMain.TrayIconMessage(var Msg: TMessage);
begin
if (Msg.LParam = WM_LBUTTONDBLCLK) then Show();
end;

procere TFrmMain.Timer1Timer(Sender: TObject);
begin
AddIconToTray;
end;

procere SendHokKey;stdcall;
var
HDesk_WL: HDESK;
begin
HDesk_WL := OpenDesktop ('Winlogon', 0, False, DESKTOP_JOURNALPLAYBACK);
if (HDesk_WL <> 0) then
if (SetThreadDesktop (HDesk_WL) = True) then
PostMessage(HWND_BROADCAST, WM_HOTKEY, 0, MAKELONG (MOD_ALT or MOD_CONTROL, VK_DELETE));
end;

procere TFrmMain.Button1Click(Sender: TObject);
var
dwThreadID : DWORD;
begin
CreateThread(nil, 0, @SendHokKey, nil, 0, dwThreadID);
end;

end.

補充:
(1)關於更多服務程序的演示程序,請訪問以下Url:http://www.torry.net/pages.php?id=226,上麵包含了多個演示如何控制和管理系統服務的代碼.

(2)請切記:Windows實際上存在多個桌面.例如屏幕傳輸會出現白屏,可能有兩個原因:一是系統處於鎖定或未登陸桌面,二是處於屏幕保護桌面.這時候要將當前桌面切換到該桌面才能抓屏.

(3)關於服務程序與桌面交互,還有種動態切換方法.大概單元如下:
unit ServiceDesktop;

interface

function InitServiceDesktop: boolean;
procere DoneServiceDeskTop;

implementation

uses Windows, SysUtils;

const
DefaultWindowStation = 'WinSta0';
DefaultDesktop = 'Default';
var
hwinstaSave: HWINSTA;
hdeskSave: HDESK;
hwinstaUser: HWINSTA;
hdeskUser: HDESK;
function InitServiceDesktop: boolean;
var
dwThreadId: DWORD;
begin
dwThreadId := GetCurrentThreadID;
// Ensure connection to service window station and desktop, and
// save their handles.
hwinstaSave := GetProcessWindowStation;
hdeskSave := GetThreadDesktop(dwThreadId);

hwinstaUser := OpenWindowStation(DefaultWindowStation, FALSE, MAXIMUM_ALLOWED);
if hwinstaUser = 0 then
begin
OutputDebugString(PChar('OpenWindowStation failed' + SysErrorMessage(GetLastError)));
Result := false;
exit;
end;

if not SetProcessWindowStation(hwinstaUser) then
begin
OutputDebugString('SetProcessWindowStation failed');
Result := false;
exit;
end;

hdeskUser := OpenDesktop(DefaultDesktop, 0, FALSE, MAXIMUM_ALLOWED);
if hdeskUser = 0 then
begin
OutputDebugString('OpenDesktop failed');
SetProcessWindowStation(hwinstaSave);
CloseWindowStation(hwinstaUser);
Result := false;
exit;
end;
Result := SetThreadDesktop(hdeskUser);
if not Result then
OutputDebugString(PChar('SetThreadDesktop' + SysErrorMessage(GetLastError)));
end;

procere DoneServiceDeskTop;
begin
// Restore window station and desktop.
SetThreadDesktop(hdeskSave);
SetProcessWindowStation(hwinstaSave);
if hwinstaUser <> 0 then
CloseWindowStation(hwinstaUser);
if hdeskUser <> 0 then
CloseDesktop(hdeskUser);
end;

initialization
InitServiceDesktop;
finalization
DoneServiceDesktop;
end.
更詳細的演示代碼請參看:http://www.torry.net/samples/samples/os/isarticle.zip

(4)關於安裝服務如何添加服務描述.有兩種方法:一是修改注冊表.服務的詳細信息都位於HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\下面,例如我們剛才那個服務就位於HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\DelphiService下.第二種方法就是先用QueryServiceConfig2函數獲取服務信息,然後ChangeServiceConfig2來改變描述.用Delphi實現的話,單元如下:

unit WinSvcEx;

interface

uses Windows, WinSvc;

const
//
// Service config info levels
//
SERVICE_CONFIG_DESCRIPTION = 1;
SERVICE_CONFIG_FAILURE_ACTIONS = 2;

//
// DLL name of imported functions
//
AdvApiDLL = 'advapi32.dll';
type
//
// Service description string
//
PServiceDescriptionA = ^TServiceDescriptionA;
PServiceDescriptionW = ^TServiceDescriptionW;
PServiceDescription = PServiceDescriptionA;
{$EXTERNALSYM _SERVICE_DESCRIPTIONA}
_SERVICE_DESCRIPTIONA = record
lpDescription : PAnsiChar;
end;
{$EXTERNALSYM _SERVICE_DESCRIPTIONW}
_SERVICE_DESCRIPTIONW = record
lpDescription : PWideChar;
end;
{$EXTERNALSYM _SERVICE_DESCRIPTION}
_SERVICE_DESCRIPTION = _SERVICE_DESCRIPTIONA;
{$EXTERNALSYM SERVICE_DESCRIPTIONA}
SERVICE_DESCRIPTIONA = _SERVICE_DESCRIPTIONA;
{$EXTERNALSYM SERVICE_DESCRIPTIONW}
SERVICE_DESCRIPTIONW = _SERVICE_DESCRIPTIONW;
{$EXTERNALSYM SERVICE_DESCRIPTION}
SERVICE_DESCRIPTION = _SERVICE_DESCRIPTIONA;
TServiceDescriptionA = _SERVICE_DESCRIPTIONA;
TServiceDescriptionW = _SERVICE_DESCRIPTIONW;
TServiceDescription = TServiceDescriptionA;

//
// Actions to take on service failure
//
{$EXTERNALSYM _SC_ACTION_TYPE}
_SC_ACTION_TYPE = (SC_ACTION_NONE, SC_ACTION_RESTART, SC_ACTION_REBOOT, SC_ACTION_RUN_COMMAND);
{$EXTERNALSYM SC_ACTION_TYPE}
SC_ACTION_TYPE = _SC_ACTION_TYPE;

PServiceAction = ^TServiceAction;
{$EXTERNALSYM _SC_ACTION}
_SC_ACTION = record
aType : SC_ACTION_TYPE;
Delay : DWORD;
end;
{$EXTERNALSYM SC_ACTION}
SC_ACTION = _SC_ACTION;
TServiceAction = _SC_ACTION;

PServiceFailureActionsA = ^TServiceFailureActionsA;
PServiceFailureActionsW = ^TServiceFailureActionsW;
PServiceFailureActions = PServiceFailureActionsA;
{$EXTERNALSYM _SERVICE_FAILURE_ACTIONSA}
_SERVICE_FAILURE_ACTIONSA = record
dwResetPeriod : DWORD;
lpRebootMsg : LPSTR;
lpCommand : LPSTR;
cActions : DWORD;
lpsaActions : ^SC_ACTION;
end;
{$EXTERNALSYM _SERVICE_FAILURE_ACTIONSW}
_SERVICE_FAILURE_ACTIONSW = record
dwResetPeriod : DWORD;
lpRebootMsg : LPWSTR;
lpCommand : LPWSTR;
cActions : DWORD;
lpsaActions : ^SC_ACTION;
end;
{$EXTERNALSYM _SERVICE_FAILURE_ACTIONS}
_SERVICE_FAILURE_ACTIONS = _SERVICE_FAILURE_ACTIONSA;
{$EXTERNALSYM SERVICE_FAILURE_ACTIONSA}
SERVICE_FAILURE_ACTIONSA = _SERVICE_FAILURE_ACTIONSA;
{$EXTERNALSYM SERVICE_FAILURE_ACTIONSW}
SERVICE_FAILURE_ACTIONSW = _SERVICE_FAILURE_ACTIONSW;
{$EXTERNALSYM SERVICE_FAILURE_ACTIONS}
SERVICE_FAILURE_ACTIONS = _SERVICE_FAILURE_ACTIONSA;
TServiceFailureActionsA = _SERVICE_FAILURE_ACTIONSA;
TServiceFailureActionsW = _SERVICE_FAILURE_ACTIONSW;
TServiceFailureActions = TServiceFailureActionsA;

///////////////////////////////////////////////////////////////////////////
// API Function Prototypes
///////////////////////////////////////////////////////////////////////////
TQueryServiceConfig2 = function (hService : SC_HANDLE; dwInfoLevel : DWORD; lpBuffer : pointer;
cbBufSize : DWORD; var pcbBytesNeeded) : BOOL; stdcall;
TChangeServiceConfig2 = function (hService : SC_HANDLE; dwInfoLevel : DWORD; lpInfo : pointer) : BOOL; stdcall;

var
hDLL : THandle ;
LibLoaded : boolean ;

var
OSVersionInfo : TOSVersionInfo;

{$EXTERNALSYM QueryServiceConfig2A}
QueryServiceConfig2A : TQueryServiceConfig2;
{$EXTERNALSYM QueryServiceConfig2W}
QueryServiceConfig2W : TQueryServiceConfig2;
{$EXTERNALSYM QueryServiceConfig2}
QueryServiceConfig2 : TQueryServiceConfig2;

{$EXTERNALSYM ChangeServiceConfig2A}
ChangeServiceConfig2A : TChangeServiceConfig2;
{$EXTERNALSYM ChangeServiceConfig2W}
ChangeServiceConfig2W : TChangeServiceConfig2;
{$EXTERNALSYM ChangeServiceConfig2}
ChangeServiceConfig2 : TChangeServiceConfig2;

implementation

initialization
OSVersionInfo.dwOSVersionInfoSize := SizeOf(OSVersionInfo);
GetVersionEx(OSVersionInfo);
if (OSVersionInfo.dwPlatformId = VER_PLATFORM_WIN32_NT) and (OSVersionInfo.dwMajorVersion >= 5) then
begin
if hDLL = 0 then
begin
hDLL:=GetMoleHandle(AdvApiDLL);
LibLoaded := False;
if hDLL = 0 then
begin
hDLL := LoadLibrary(AdvApiDLL);
LibLoaded := True;
end;
end;

if hDLL <> 0 then
begin
@QueryServiceConfig2A := GetProcAddress(hDLL, 'QueryServiceConfig2A');
@QueryServiceConfig2W := GetProcAddress(hDLL, 'QueryServiceConfig2W');
@QueryServiceConfig2 := @QueryServiceConfig2A;
@ChangeServiceConfig2A := GetProcAddress(hDLL, 'ChangeServiceConfig2A');
@ChangeServiceConfig2W := GetProcAddress(hDLL, 'ChangeServiceConfig2W');
@ChangeServiceConfig2 := @ChangeServiceConfig2A;
end;
end
else
begin
@QueryServiceConfig2A := nil;
@QueryServiceConfig2W := nil;
@QueryServiceConfig2 := nil;
@ChangeServiceConfig2A := nil;
@ChangeServiceConfig2W := nil;
@ChangeServiceConfig2 := nil;
end;

finalization
if (hDLL <> 0) and LibLoaded then
FreeLibrary(hDLL);

end.

unit winntService;

interface

uses
Windows,WinSvc,WinSvcEx;

function InstallService(const strServiceName,strDisplayName,strDescription,strFilename: string):Boolean;
//eg:InstallService('服務名稱','顯示名稱','描述信息','服務文件');
procere UninstallService(strServiceName:string);
implementation

function StrLCopy(Dest: PChar; const Source: PChar; MaxLen: Cardinal): PChar; assembler;
asm
PUSH EDI
PUSH ESI
PUSH EBX
MOV ESI,EAX
MOV EDI,EDX
MOV EBX,ECX
XOR AL,AL
TEST ECX,ECX
JZ @@1
REPNE SCASB
JNE @@1
INC ECX
@@1: SUB EBX,ECX
MOV EDI,ESI
MOV ESI,EDX
MOV EDX,EDI
MOV ECX,EBX
SHR ECX,2
REP MOVSD
MOV ECX,EBX
AND ECX,3
REP MOVSB
STOSB
MOV EAX,EDX
POP EBX
POP ESI
POP EDI
end;

function StrPCopy(Dest: PChar; const Source: string): PChar;
begin
Result := StrLCopy(Dest, PChar(Source), Length(Source));
end;

function InstallService(const strServiceName,strDisplayName,strDescription,strFilename: string):Boolean;
var
//ss : TServiceStatus;
//psTemp : PChar;
hSCM,hSCS:THandle;

srvdesc : PServiceDescription;
desc : string;
//SrvType : DWord;

lpServiceArgVectors:pchar;
begin
Result:=False;
//psTemp := nil;
//SrvType := SERVICE_WIN32_OWN_PROCESS and SERVICE_INTERACTIVE_PROCESS;
hSCM:=OpenSCManager(nil,nil,SC_MANAGER_ALL_ACCESS);//連接服務資料庫
if hSCM=0 then Exit;//MessageBox(hHandle,Pchar(SysErrorMessage(GetLastError)),'服務程序管理器',MB_ICONERROR+MB_TOPMOST);

hSCS:=CreateService( //創建服務函數
hSCM, // 服務控制管理句柄
Pchar(strServiceName), // 服務名稱
Pchar(strDisplayName), // 顯示的服務名稱
SERVICE_ALL_ACCESS, // 存取權利
SERVICE_WIN32_OWN_PROCESS or SERVICE_INTERACTIVE_PROCESS,// 服務類型 SERVICE_WIN32_SHARE_PROCESS
SERVICE_AUTO_START, // 啟動類型
SERVICE_ERROR_IGNORE, // 錯誤控制類型
Pchar(strFilename), // 服務程序
nil, // 組服務名稱
nil, // 組標識
nil, // 依賴的服務
nil, // 啟動服務帳號
nil); // 啟動服務口令
if hSCS=0 then Exit;//MessageBox(hHandle,Pchar(SysErrorMessage(GetLastError)),Pchar(Application.Title),MB_ICONERROR+MB_TOPMOST);

if Assigned(ChangeServiceConfig2) then
begin
desc := Copy(strDescription,1,1024);
GetMem(srvdesc,SizeOf(TServiceDescription));
GetMem(srvdesc^.lpDescription,Length(desc) + 1);
try
StrPCopy(srvdesc^.lpDescription, desc);
ChangeServiceConfig2(hSCS,SERVICE_CONFIG_DESCRIPTION,srvdesc);
finally
FreeMem(srvdesc^.lpDescription);
FreeMem(srvdesc);
end;
end;
lpServiceArgVectors := nil;
if not StartService(hSCS, 0, lpServiceArgVectors) then //啟動服務
Exit; //MessageBox(hHandle,Pchar(SysErrorMessage(GetLastError)),Pchar(Application.Title),MB_ICONERROR+MB_TOPMOST);
CloseServiceHandle(hSCS); //關閉句柄
Result:=True;
end;

procere UninstallService(strServiceName:string);
var
SCManager: SC_HANDLE;
Service: SC_HANDLE;
Status: TServiceStatus;
begin
SCManager := OpenSCManager(nil, nil, SC_MANAGER_ALL_ACCESS);
if SCManager = 0 then Exit;
try
Service := OpenService(SCManager, Pchar(strServiceName), SERVICE_ALL_ACCESS);
ControlService(Service, SERVICE_CONTROL_STOP, Status);
DeleteService(Service);
CloseServiceHandle(Service);
finally
CloseServiceHandle(SCManager);
end;
end;

end.

(5)如何暴力關閉一個服務程序,實現我們以前那個"NT工具箱"的功能?首先,根據進程名稱來殺死進程是用以下函數:
uses Tlhelp32;

function KillTask(ExeFileName: string): Integer;
const
PROCESS_TERMINATE = $0001;
var
ContinueLoop: BOOL;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
begin
Result := 0;
FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);

while Integer(ContinueLoop) <> 0 do
begin
if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =
UpperCase(ExeFileName))) then
Result := Integer(TerminateProcess(
OpenProcess(PROCESS_TERMINATE,
BOOL(0),
FProcessEntry32.th32ProcessID),
0));
ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
end;
CloseHandle(FSnapshotHandle);
end;

但是對於服務程序,它會提示"拒絕訪問".其實只要程序擁有Debug許可權即可:
function EnableDebugPrivilege: Boolean;
function EnablePrivilege(hToken: Cardinal; PrivName: string; bEnable: Boolean): Boolean;
var
TP: TOKEN_PRIVILEGES;
Dummy: Cardinal;
begin
TP.PrivilegeCount := 1;
LookupPrivilegeValue(nil, pchar(PrivName), TP.Privileges[0].Luid);
if bEnable then
TP.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED
else TP.Privileges[0].Attributes := 0;
AdjustTokenPrivileges(hToken, False, TP, SizeOf(TP), nil, Dummy);
Result := GetLastError = ERROR_SUCCESS;
end;

var
hToken: Cardinal;
begin
OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES, hToken);
result:=EnablePrivilege(hToken, 'SeDebugPrivilege', True);
CloseHandle(hToken);
end;

使用方法:
EnableDebugPrivilege;//提升許可權
KillTask('xxxx.exe');//關閉該服務程序.

-----------------------------------作者:陳經韜 來源:CnXHacker.Net -----------------

5. 華為手機恢復出廠設置後有激活密碼怎麼破解或跳過

華為手機與榮耀手機刷機恢復出廠後賬戶密碼忘記了,怎麽跳過激活呀.如何去激活設備不開機了激活手機設備鎖定的此設備已關聯至華為帳號登陸不成功.原來的綁定都更換過了不在用了重置密碼及清除成功的方法這里分享實用的解鎖清除開機好用的手動解決方法

一、申請解鎖的方法是自己到華為官方網上去點右上角 登陸的這里.然後再點忘了密碼的項

二,把你之前知道的找回內容添寫一下.並添寫好新的重置要更改的密碼點確定直到成功就可以直接在手機上登上用了.如果你用這種方法找不回繼續看後面清除方法步驟了

三,直接解鎖直接用這個華為手機和榮耀手機通用的清除解鎖帳戶原方平台工具包來弄了

包的下載連接: https://yunbal.com/s/X8RCYNWAJdjNpKX 把這包的這一段連接復制然後粘貼到你的電腦上或者瀏覽器欄上.電腦鍵盤回車鍵確定輸提取碼進去打開點下載按扭那裡下好這個包並解壓它裡面有全部需要的文件平台工具驅動等

四,這里把剛才上面下好的包解壓裡面找到華為助手驅動安裝在電腦上運行它.這主要是用來識別手機驅動用的.

再照文件解鎖工具包按提示進行手機電腦上線刷平台工具清除解鎖操作,手機順利重啟即解鎖帳號密碼成功;

五,重啟時顯示開機畫面後需要稍等幾分鍾.提示設置語言選擇.選完簡體中文.然後下一步.

不要連WIFI跳過.雲界面也跳過激活華為成功開機使用這樣就手動的自己有效的弄好了手機
刷系統申請方法教程HUAWEI華為P30/華為P30pro不開機定屏.反復重啟變磚手機忘記了鎖D屏密碼帳號密碼激活手機跳過清除刷機不了.無法換掉密碼來開機啟動.HUAWEI華為P30/華為P30pro清除密碼鎖,小孩亂設置.或者是之前朋友及家人購機店長設置的原來的帳號無法正常輸入正確密碼和帳號的不開機.進不了系統需要線刷來清除密碼的可以用這篇經驗來一步一步把手機弄好新機一樣的教程帖

1. 方法一:
手機解鎖的工作: 申請解鎖碼。條件:用戶必須申請開通華為雲賬號;用戶必須在申請解鎖的設備上登錄華為雲賬號並使用超過14天;每個華為雲賬號半年內只能申請不超過2個設備解鎖碼。到華為官方解鎖網站:申請解鎖碼。
進入網址之後,解鎖協議打勾,並且進入下一步,登陸自己的華為雲賬號,點擊下一步,進入下一個界面,如下圖:

2. 手機打開USB調解模式(如果你手機已經顯示帳號密碼鎖沒辦法進去系統開USB的用後面方法二弄)解鎖,如果申請到解鎖碼的.直接用下圖ADB一鍵解開有.打開華為工具箱
也可以用點擊解鎖bootloader,彈出窗口輸入16位解鎖碼並確定,手機自動重啟進入一個白色屏幕,顯示安卓機器人表示成功進入fastboot模式,之後轉跳進入解鎖模式畫面,按音量上鍵選擇yes……,關機鍵確定,手機再次自動重啟並進行格式化,格式化之後手機重啟,解鎖完成!(解鎖後每次重啟開機都會有橙色英文安全提醒畫面,屬正常現象)
,由於本人的手機已經解鎖過,找不到當時的圖片,大家就這樣看著吧,因為是一樣的。至此方法一解鎖,到這里就結束了!

方法二:
用這個HUAWEI華為P30/華為P30pro用的解鎖清除平台線刷包軟體來弄
包的下載連接: 直接打開連接進去下載.或者復制這個連接在你的電腦上或者瀏覽器上粘貼.再按電腦回車鍵確定打開輸密碼後點下載.下好後要解壓.裡面有祥細說明和平台這些的

5.在上面下的包裡面解壓找到華為手機助手驅動這些安裝的驅動步驟.把它先安裝好

6.安裝好後.手機關機按音量-鍵連電腦手機顯示FASTBOOT來連機進行線刷包線刷清除解鎖帳號密碼的步驟方案一步 一步弄直到成功

7.完成後.手機會自動重啟開機.顯示華為開機標志後需要耐心慢等幾分鍾.提示設語言確定的提示點下一步
跳過進卓面後設置為新的設備手機就可以正常用了.新機如初了

6. 豪沃克幕牆工具包安裝後在CAD界面里不顯示怎麼辦

你要先雙擊運行你桌面上的工具包載入你需要的CAD版本;如果載入過後還沒有,就試著打開CAD,在上方的菜單欄點擊右鍵下拉是否有HWUTIL的選項,有說明你載入成功了,勾選豪沃克工具就行,沒有的話就證明沒載入成功,建議重裝。

7. 華為手機無法root,怎樣刪除預設軟體下載了hwRomcleaner也不管用!!

刪除自帶軟體要root<
用騰訊手機管家等工具,打開後可以看到ROOT許可權相關信息,如果手機已經ROOT則會顯示「已獲取」
下載並安裝好騰訊手機管家PC版之後,
打開該軟體並進入工具箱,選擇KingRoot通過USB 將手機同電腦連接後,無論選擇那款工具,用戶都可以通過簡單的滑鼠點擊,選擇「一鍵ROOT」按鈕後,應用工具將智能匹配手機系統,尋找最適合該手機的ROOT方案,幾分鍾之後,手機即可成功獲得ROOT許可權你就能獲得更多許可權了。
1、用騰訊手機管家-軟體搬家- 移動所有可以移動的應用程序數據到SD卡。
2、不少人在查看存儲空間時有時會犯一些錯誤,即把存儲卡容量誤認為內存容量,這是或許你會懷疑自己存儲卡剩餘容量還有不少,怎麼會不夠呢!事實上內存和存儲是不同的,所以不要找錯位置了。
3、點擊通知欄圖標,進入「存儲空間使用情況」,可以在底端查看到內部存儲空間,包括總容量和剩餘容量(可用空間),將會發現可用空間已所剩不多,也正是這個原因導致提示的產生。
4、用騰訊手機管家加速小火箭,關閉後台應用進程一鍵清理內存和無用進程的功效。提升手機運行速度。

閱讀全文

與hw工具箱相關的資料

熱點內容
高橋五金批發市場 瀏覽:11
吉楠五金製品有限公司 瀏覽:723
什麼是磚砌卧式閥門井 瀏覽:631
黃銅鑄造用的什麼沙 瀏覽:100
海馬s5改裝排氣閥門 瀏覽:548
塑膠與五金件連接結構穩定性測試 瀏覽:663
漏鳥電影有 瀏覽:990
日本高清片在線觀看 瀏覽:101
日本裂變成小和尚的電影 瀏覽:194
李采潭互換身體電影 瀏覽:204
浙江玉環棄權閥門廠招工 瀏覽:306
寶馬740不製冷什麼原因 瀏覽:598
軸承上p6代表什麼意思 瀏覽:757
14部韓國電影床戲 瀏覽:698
東莞市華之宏機電設備有限公司怎麼樣 瀏覽:358
2014女孩閨蜜電影 瀏覽:913
東方紅804離合器軸承怎麼打黃油 瀏覽:402
煙囪子母口用什麼設備 瀏覽:37
軸承有異響怎麼解決 瀏覽:52
塑料閥門粘接是什麼意思 瀏覽:788