VC++でブラウザコントロール

#include <windows.h>
#include <tchar.h>

#import <shdocvw.dll>
#import <mshtml.tlb>

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
                    PSTR szCmdLine, int iCmdShow)
{
	HRESULT hr = ::CoInitialize(NULL);	//COMを使うときのお約束
	if (FAILED(hr)) {
		return -1;
	}

	NewIE();		//新しいIEを開く

	HWND hwnd = ::FindWindow(NULL, _T("Google - Microsoft Internet Explorer"));
	if (hwnd != NULL) {
		SHDocVw::IWebBrowser2Ptr pIE = FindIE(hwnd);	//WebBrowserを取得する
		GoogleSearch(pIE);				//Googleに入力してみる
	} else {
		::OutputDebugString(_T("not found Google window\n"));
	}

	EventTest();	//WebBrowserのイベントを捕捉してみる

	::CoUninitialize();	//COM使用終了

	return 0;
}

void NewIE()
{
	SHDocVw::IWebBrowser2Ptr pIE;

	//IEの起動
	HRESULT hr = pIE.CreateInstance(__uuidof(SHDocVw::InternetExplorer));
//	HRESULT hr = pIE.CreateInstance(_T("InternetExplorer.Application"));
	if(FAILED(hr)){
		TCHAR str[256];
		wsprintf(str, _T("NewIE#CreateInstance error:%x\n"), hr);
		::OutputDebugString(str);
		return;
	}

	//IEの表示
	pIE->PutVisible(VARIANT_TRUE);

	pIE->Navigate(_T("http://www.ne.jp/asahi/hishidama/home/tech/vcpp/index.html"));
	while (pIE->Busy == TRUE || pIE->GetReadyState() < READYSTATE_COMPLETE) {
		Sleep(100);
	}
}

さくらインターネットでCRON実行メモ

拡張子が.shのファイルを作ります。

上2行に書く

#!/bin/sh
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin

スクリプト書いたらファイルをftp等でUP。実行権限をつける。

さくらのcron設定の実行コマンドに

sh /home/ドメイン名/cron.sh

といった感じで書く

powershellで復元ポイント作成

yyyymmddで名前つけて作成

checkpoint.ps1

$formatted_date = (Get-Date).ToString("yyyyMMdd");
CheckPoint-Computer -Description $formatted_date

vbsから実行するときは管理者権限つけてみよう

  • ExecutionPolicy も指定しないと実行できな環境もある
Set objWshShell = WScript.CreateObject("WScript.Shell") 
objWshShell.Run "powershell.exe -ExecutionPolicy RemoteSigned -File checkpoint.ps1 runas",0,1    '実行