My備忘録(又の名を雑記帳)

WinMacのMy備忘録(IT系?)

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--.--.-- | スポンサー広告 | トラックバック(-) | コメント(-) | このエントリーをブックマークに追加する | このエントリーを含むはてなブックマーク このエントリーを含むはてなブックマーク | [*Edit] |
スポンサーサイト
2010.07.10 | memo | トラックバック(0) | コメント(0) | このエントリーをブックマークに追加する | このエントリーを含むはてなブックマーク このエントリーを含むはてなブックマーク | [*Edit] |
VC++をUSBメモリなどで持ち運べるようにポータブル化。
ポータブル化と言っても、コンパイラ類だけです。
IDEなんてイラネ。どうしても必要なら好きなものを適当に。

以下は VC10 Express が対象です。
しかし、恐らくは、他のエディションでも同様の方法で可能だと思います。

2010.05.16 | memo | トラックバック(0) | コメント(0) | このエントリーをブックマークに追加する | このエントリーを含むはてなブックマーク このエントリーを含むはてなブックマーク | [*Edit] |
VC10って、ExpressにもCRTのソースが付いてくるようになったんですねぇ。。。
良い事です。
パス:
Program Files\Microsoft Visual Studio 10.0\VC\crt\src\

2010.05.14 | memo | トラックバック(0) | コメント(0) | このエントリーをブックマークに追加する | このエントリーを含むはてなブックマーク このエントリーを含むはてなブックマーク | [*Edit] |
メモ。
static unsigned int pelength;
static unsigned int peheader;

static bfd_boolean
coff_read_word (bfd *abfd, unsigned int *value)
{
unsigned char b[2];
int status;

status = bfd_bread (b, (bfd_size_type) 2, abfd);
if (status < 1)
{
*value = 0;
return FALSE;
}

if (status == 1)
*value = (unsigned int) b[0];
else
*value = (unsigned int) (b[0] + (b[1] << 8));

pelength += (unsigned int) status;

return TRUE;
}

static unsigned int
coff_compute_checksum (bfd *abfd)
{
bfd_boolean more_data;
file_ptr filepos;
unsigned int value;
unsigned int total;

total = 0;
pelength = 0;
filepos = (file_ptr) 0;

do
{
if (bfd_seek (abfd, filepos, SEEK_SET) != 0)
return 0;

more_data = coff_read_word (abfd, &value);
total += value;
total = 0xffff & (total + (total >> 0x10));
filepos += 2;
}
while (more_data);

return (0xffff & (total + (total >> 0x10)));
}

static bfd_boolean
coff_apply_checksum (bfd *abfd)
{
unsigned int computed;
unsigned int checksum = 0;

if (bfd_seek (abfd, 0x3c, SEEK_SET) != 0)
return FALSE;

if (!coff_read_word (abfd, &peheader))
return FALSE;

if (bfd_seek (abfd, peheader + 0x58, SEEK_SET) != 0)
return FALSE;

checksum = 0;
bfd_bwrite (&checksum, (bfd_size_type) 4, abfd);

if (bfd_seek (abfd, peheader, SEEK_SET) != 0)
return FALSE;

computed = coff_compute_checksum (abfd);

checksum = computed + pelength;

if (bfd_seek (abfd, peheader + 0x58, SEEK_SET) != 0)
return FALSE;

bfd_bwrite (&checksum, (bfd_size_type) 4, abfd);

return TRUE;
}

2010.03.17 | memo | トラックバック(0) | コメント(0) | このエントリーをブックマークに追加する | このエントリーを含むはてなブックマーク このエントリーを含むはてなブックマーク | [*Edit] |
Bootmgr(BCD)未対応ツールを使い開始セクタを変えたり、ブートパーティション(Microsoft用語ではシステムパーティション)を削除するなどして、「BOOTMGR is missing」や「0xc0000225」エラーが出た場合の修復方法です。(Vista以降ではNTLDRからBootmgrにブートローダが変更されています)

・ブートパーティション(Microsoft用語ではシステムパーティション)削除後

2010.02.06 | memo | トラックバック(0) | コメント(2) | このエントリーをブックマークに追加する | このエントリーを含むはてなブックマーク このエントリーを含むはてなブックマーク | [*Edit] |
Vol.1は↓
http://winmac.blog33.fc2.com/blog-entry-114.html


レスキュー用ライブCDとして、新たにMinimum Ubuntuというものを見つけた。
Minimum Ubuntu
http://wikiwiki.jp/disklessfun/?minimum-ubuntu

usb-minimumubuntu.img (28 MiB)
各種ブートローダ(MBM,GRUB Legacy,GRUB 2,syslinux)の復旧に特化しているような印象を受けたが、他にも色々出来る。
オンメモリ動作可能。
testdiskあり。
サイズがとても小さい。

2010.01.26 | memo | トラックバック(0) | コメント(3) | このエントリーをブックマークに追加する | このエントリーを含むはてなブックマーク このエントリーを含むはてなブックマーク | [*Edit] |

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。