VMwareパソコンのこと日記

VMwareでゲストOSをコピーした後の処理

1 Mins read

VMwareでゲストOSを複製して使用するときWindows系OSの場合SIDの変更が必要になりますので
これを行わないとドメイン管理などで名前のバッティングが起こりIPやコンピュータ名の取得ができなくなります。
注意!この他にもhoge.vmx内の「uuid.bios」なども変更が必要!

VMwareから拝借↓方法は

質問:
Windows 2000/XP/2003のマシンを複製し、同一のネットワーク上で同時に利用する際の問題点を教えてください。
 
回答:
WindowsNT系OSでは、コンピュータ名とは別に、内部には「SID(Security ID)」と呼ばれる固有の数値情報を持っており、ドメインに参加している場合などにこのSIDを使ってコンピュータを識別しています。そのため、コンピュータ名の変更を行ってもSIDが同じ場合、SIDの重複が発生します。
 
SIDの重複を解消する方法といたしまして、Windowsに用意されております「sysprep」ツールを利用して頂く必要があります。
 
具体的な作業方法は以下の通りです。
 
Windows XP及び2003の場合
1.ゲストOSにAdministratorでログオンします。
2.Cドライブ内にsysprepフォルダを作成し、OSのインストールCDのDEPLOY.CAB内を全てコピーします。
 ※sysprepはSUPPORT\TOOLS\DEPLOY.CAB内に存在します。
3.手順2で作成したsysprepフォルダ内のsysprep.exeをクリックします。
4.「システム準備ツール」が表示されますので、画面内に表示されております。 「再シール」をクリックします。(再シールを選択して頂きますと、ゲストOSは自動的にシャットダウンされます。)
5.再度ゲストOSを起動して頂きますと、OSインストーラーのユーザ名及び、会社名の入力を行う画面より、開始されます。このタイミングでSIDが変更されます。
6.以降は通常のインストーラーと同様の作業を実施します。
7.管理情報が重複しなくなることをご確認願います。
 ※省力化のため、sysprepの「再シール」を実施した直後のデータを複製することをおすすめします。
 
詳細に関しましては、以下のマイクロソフトの技術情報をご参照願います。
http://support.microsoft.com/default.aspx?scid=kb;ja;299840
 
Windows 2000の場合
1.ゲストOSにAdministratorでログオンします。
2.Cドライブ内にsysprepフォルダを作成し、OSのインストールCDのDEPLOY.CAB内を全てコピーします。
 ※sysprepはSUPPORT\TOOLS\DEPLOY.CAB内に存在します。
3.手順2で作成したsysprepフォルダ内のsysprep.exeをクリックします。
4.以下のメッセージが表示されたPOPが表示されますので、「OK」を選択します。
 「このアプリケーションを実行するとシステムのいくつかのセキュリティパラメータが変更される可能性があります。
 このインストールを複製のために準備している場合以外は、[キャンセル]をクリックしてください。
 このアプリケーションの実行後、コンピュータは自動的にシャットダウンします。」
5.再度ゲストOSを起動して頂きますと、OSインストーラーのユーザ名及び、会社名の入力を行う画面より、開始されます。このタイミングでSIDが変更されます。
6.以降は通常のインストーラーと同様の作業を実施します。
7.管理情報が重複しなくなることをご確認願います。
 ※省力化のため、sysprepの「再シール」を実施した直後のデータを複製することをおすすめします。

行けたかな?

Read more
VBVistaパソコンのこと日記

VistaにVB6をInstall

1 Mins read

なにを今更、VB6と思いますが(汗)
ビジネスの世界では現役?です:evil:

VistaへVB6をインストールする際に気をつけることは

・CDの自動起動でセットアップを始めない!

・エクスプローラからsetup.exeを右クリックし管理者権限で実行でセットアップ開始
(UACやログイン権限にもよるが・・・念のため)

・再インストールの場合、追加と削除にてアンインストールしても以前の残骸が残っている可能性がある、これがオイタをする可能性があるので旧インストール先のフォルダを調べて完全消去!(C:\Program Files\Microsoft Visual Studio)など

・そのあとSP6aをインストール

So Good!:razz:

Read more
Vistaパソコンのこと日記

Vistaのユーザーアクセス制御 UAC

1 Mins read

Vistaに搭載されたUACですが、Admin権限なのに一々MessageBoxの確認が出てきてめんどくさい:evil:

「開発者の俺にどうしろと言うわけ?」ってことVista君に言っても分からないので
「ユーザーアカウント制御」とコントロールパネル(非クラシック表示)で検索すると
「ユーザーアカウント制御の有効化または無効化」が出てくるので、こいつをポチッとやると止まる・・・

まいったかぁ:roll:

でも最近の悪いソフトみてると一般ユーザーにはこの機能があったほうが良い様な気がする:razz:

Read more
パソコンのこと日記

Unbuffered? Unbuffered ECC?Registered ECC?

1 Mins read

仕事でサーバー君とクライアント君のPCを組むことになったんだけど

最近、作ってなかったから久々に秋葉にいったら時代の流れについていけなかった(汗)
今までも色々PC組んできたけど、復習の意味もかねて覚書!

メモリーには以下の機能がある

1.Unbuffered Or Registered (Buffered )
詳しくはRegistered機能とは?

2.ECC Or 非ECC (ノンパリティーチェック)
詳しくはECC機能とは?

上記の法則ではメモリーは以下の4つに分類される

1.Unbuffered 非ECC
  (通常売り場では記載なし Or Unbuffered)
 
2.Unbuffered ECC
  (通常売り場ではUnbuffered ECC Or ECC付き)
 
3.Registered 非ECC
  (???)
 
4.Registered ECC
  (通常売り場ではRegistered ECC Or Registered)

上記の4つに分類されるのだが、3番のReg付きで非ECCメモリーを筆者は見たことがない
なので基本的には3つになると思われる。

どのような環境で使用されるか?

通常クライアントPCなど多くに使用されているメモリは、Unbufferedで非ECCメモリでOKなことが多い
大部分の人はこのメモリーを使用している。
値段は安

ワークステーション向けのXeon対応マザーボードなどでUnbuffered ECCが使用される場合がある
値段は中

サーバー向けのマザーボードではRegistered ECCが良く使われる。
多くのメモリーを搭載する場合にチェック機能がより重要になってくる
値段は高

消費者としては1本化してほしいものである・・・・:roll:

余談・・・Xeon事情
また、最近はFully Buffered DIMMといわれるメモリーも登場し、DDR2以上のメモリー対応をしている
Xeonなどのマザーボードでは使用され始めている。
値段は激高

ちなみにこのメモリーも分類はRegistered(Buffered) ECCで・・・
パリティチェック(Chipkillという)度合いは従来のECCチェック以上:evil:

Read more
.NETASP.NETパソコンのこと日記

Disposeにてアンマネージドコードとマネージドコードの違い

1 Mins read

前回の続きドス:evil:

前回「Dispose」の実装について記述しましたが

  'クラスのリソースを解放するオーバーロードされた Dispose メソッド。
  'このメソッドは基本クラスの Dispose メソッドおよび Finalize メソッドから呼び出す必要があります。
  Protected Overridable Sub Dispose(ByVal disposing As Boolean)
    If Not Me.disposed Then
      If disposing Then
        ' Insert code to free unmanaged resources.
      End If
    ' Insert code to free shared resources.
    End If
    Me.disposed = True
  End Sub

引数にBuooleanの引数があり、内部If文でTrueとFalseで開放の種類を選別できる形になっていますが、
これの意味を解説しますね。

.NETではCLRという中間言語を使用して管理しています。

しかしWin32APIなど旧来のロジックも記述することが出来るので、開放時のタイミングがNew元が開放するのと
GC任せで開放するのではタイミングにずれが生じ、後者の場合CLR以外の記述がある時に問題が発生する可能性があります。

New元が呼び出す「Public Overloads Sub Dispose() Implements IDisposable.Dispose」内では

全ての開放が出来る「Dispose(True)」で呼び出され

いつ呼び出されるか分からない「Protected Overrides Sub Finalize()」内では

CLRが管理するものだけ開放が出来る「Dispose(False)」で呼び出されているのです。

なので特殊対応しているものでない限りIf外に記述することになるでしょうね:razz:

特殊対応は責任を持ってその都度、後処理が必要になるということですな:cool:

Read more