½â¾öCOMÏÔʾHTML£¬ÎÞ·¨copy¡¢pasteµÄÎÊÌâ
ÕâÁ½¸ö²Ù×÷ĬÈÏÊDZ»ÆÁ±ÎÁ˵ģ¬ÐèÒªÊÖ¶¯À¹½Ø°´¼üÏûϢȻºó´¦Àí¡£
Èç¹ûǶÈëHTMLµÄ´°¿ÚÄò»µ½WM_KEYDOWNÕâÑùµÄÏûÏ¢£¬¾ÍÖ»ºÃÖ±½ÓÔÚÏûϢѻ·ÀïÀ¹½ØÁË£º
{
while (0 != (r = GetMessage(&msg, NULL, 0, 0))) {
if (r == -1) {
break;
}
if (CheckIfDealCopyPaste(msg)) {
continue;
}
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
È»ºó¼ì²é°´¼ü£º
bool CheckIfDealCopyPaste(const MSG &msg)
{
if (msg.message != WM_KEYDOWN) {
return false;
}
BOOL bCtrlDown = (0x80 & GetKeyState(VK_CONTROL));
if (msg.wParam == _T('X') && bCtrlDown) {
DoCommand(L"Cut");
return true;
} else if (msg.wParam == _T('C') && bCtrlDown) {
DoCommand(L"Copy");
return true;
} else if (msg.wParam == _T('V') && bCtrlDown) {
DoCommand(L"Paste");
return true;
} else if (msg.wParam == _T('A') && bCtrlDown) {
DoCommand(L"SelectAll");
return true;
}
return false;
}
void DoCommand(LPCWSTR szCommand)
{
BSTR bStr = SysAllocString(szCommand);
DoWebCommand(m_hWnd, bStr); // m_hWndΪǶÈëHTMLµÄ´°¿Ú¾ä±ú
SysFreeString(bStr);
}
// ÕâÊÇÒ»¸öCº¯Êý
void WINAPI DoWebCommand(HWND hWnd, BSTR idCmd)
{
IOleObject **browserHandle;
IOleObject *browserObject;
TRACE_FUNC;
if ((browserHandle = (IOleObject **)GetWindowLongPtr(hWnd, GWLP_USERDATA)))
{
browserObject = *browserHandle;
do
{
IWebBrowser2 *webBrowser2 = NULL;
IConnectionPointContainer *spCPC = NULL;
IConnectionPoint *spCP = NULL;
IDispatch *pDoc = NULL;
IHTMLDocument2 *htmlDoc = NULL;
VARIANT_BOOL bVal;
HRESULT hr;
hr = browserObject->lpVtbl->QueryInterface(browserObject, &IID_IWebBrowser2, (void**)&webBrowser2);
Ïà¹ØÎĵµ£º
ÈçºÎÏòHTML 5¹ý¶É£¿
¡¡¡¡Web¿ª·¢ÉçÇøµÄ²»ÉÙÈËÈÏΪתÏòHTML 5Òª½÷É÷¡£±ÈÈ磬ËäȻ΢Èí¼Æ»®ÔÚIE9ÖÐÖ§³ÖHTML 5£¬µ«Õâ¼ÒÈí¼þÒµ¾Þ뢶ÔÓÚÔÚHTML 5»¹Ã»ÓÐÕýʽ³ÉΪ±ê׼֮ǰ֧³ÖËüÐÄ´æÒÉÂÇ¡£Î¢ÈíWindowsÊÂÒµ²¿×ܲÃSteven Sinofsky×î½ü½ÓÊܲɷÃʱ±íʾ£º“ÏÈ˵×Ô¼º»ùÓÚ±ê×¼£¬µ«ËæºóÓÖ˵ÄãÊÇ×î¼æÈÝHTML 5µÄä¯ÀÀÆ÷£¬ÕâÖÖ×ö·¨²»Ã÷ÖÇ£ ......
<script language="C#" runat="server">
void Page_Load(Object sender, EventArgs e) {
Message.InnerHtml = "Welcome to ASP.NET";
}
</script>
...
<span id="Message" style="font-size:24" runat="server"/> ......
ÈçºÎ±íʾÉϼ¶Ä¿Â¼
../±íʾԴÎļþËùÔÚĿ¼µÄÉÏÒ»¼¶Ä¿Â¼£¬../../±íʾԴÎļþËùÔÚĿ¼µÄÉÏÉϼ¶Ä¿Â¼£¬ÒÔ´ËÀàÍÆ¡£
¼ÙÉèinfo.html·¾¶ÊÇ£ºc:\Inetpub\wwwroot\sites\blabla\info.html
¼ÙÉèindex.html·¾¶ÊÇ£ºc:\Inetpub\wwwroot\sites\index.html
ÔÚinfo.html¼ÓÈëindex.html³¬Á´½ÓµÄ´úÂëÓ¦¸ÃÕâÑùд£º
<a href = "../i ......
METAÊÇÓÃÀ´ÔÚHTMLÎĵµÖÐÄ£ÄâHTTPÐÒéµÄÏìӦͷ±¨ÎÄ¡£META±êÇ©ÓÃÓÚÍøÒ³µÄÓëÖУ¬META±êÇ©µÄÓô¦ºÜ¶à¡£METAµÄÊôÐÔÓÐÁ½ÖÖ£ºnameºÍhttp-equiv¡£nameÊôÐÔÖ÷ÒªÓÃÓÚÃèÊöÍøÒ³£¬¶ÔÓ¦ÓÚcontent£¨ÍøÒ³ÄÚÈÝ£©£¬ÒÔ±ãÓÚËÑË÷ÒýÇæ»úÆ÷È˲éÕÒ¡¢·ÖÀࣨĿǰ¼¸ºõËùÓеÄËÑË÷ÒýÇæ¶¼Ê¹ÓÃÍøÉÏ»úÆ÷ÈË ......