0

VB スクリプトを使用してプロセスの地域設定を設定することは可能ですか?

Dim oEnv: Set oEnv = WshShell.Environment("PROCESS")
oEnv.Item("NLS_LANG") = "AMERICAN_AMERICA.WE8MSWIN1252"

これは私が得たコードの一部です。それがどのように機能するかわかりませんか?申請書の基準と形式を、特に英国から米国に設定したいと考えています。

ありがとうニシャント

4

2 に答える 2

0

これはレジストリに設定する必要があります。使用するレジストリ パスは、使用しているバージョンによって異なります。

Oracle バージョン 7 の場合:

HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE

Const HKEY_LOCAL_MACHINE = &H80000002

strKeyPath = "SOFTWARE\ORACLE"
strValueName = "NLS_LANG"
strValue = "AMERICAN_AMERICA.WE8MSWIN1252"

strComputer = "."
Set objRegistry = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
objRegistry.SetStringValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName, strValue

Oracle Database バージョン 8、8i、および 9i の場合:

HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEx\ ここで、「x」はOracleホームを識別する一意の番号です。HOME0 は最初のインストールです

Const HKEY_LOCAL_MACHINE = &H80000002

strKeyPath = "SOFTWARE\ORACLE\HOMEx"
strValueName = "NLS_LANG"
strValue = "AMERICAN_AMERICA.WE8MSWIN1252"

strComputer = "."
Set objRegistry = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
objRegistry.SetStringValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName, strValue

Oracle データベース 10g の場合:

HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_

Const HKEY_LOCAL_MACHINE = &H80000002

strKeyPath = "SOFTWARE\ORACLE\KEY_<oracle_home_name>"
strValueName = "NLS_LANG"
strValue = "AMERICAN_AMERICA.WE8MSWIN1252"

strComputer = "."
Set objRegistry = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
objRegistry.SetStringValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName, strValue
于 2012-03-19T21:00:56.100 に答える
0

コンピュータは環境変数を使用して、アプリケーションの特定の内部設定を記憶しています。それらを表示するには、Windows キー (フラグ) + Pause/Break を押し、[詳細設定] タブを選択し、[環境変数] ボタンを押して、[システム変数] セクションを調べます。

WshShell.Environment オブジェクトを使用すると、次の変数を読み書きできます。

Option Explicit
dim wshshell, EnvVar
set WshShell = WScript.CreateObject("WScript.Shell")

Dim oEnv: Set oEnv = WshShell.Environment("PROCESS") 

' This shows you all environment variables in your system:    
For each EnvVar in oEnv
    msgbox EnvVar
Next

' This shows you a particular environment variable:
msgbox oEnv.item("OS")

' And this sets a particular environment variable:
oEnv.Item("NLS_LANG") = "AMERICAN_AMERICA.WE8MSWIN1252"  

NLS_LANGは Oracle で使用される設定であり、カルチャ設定を設定します。これを設定することAMERICAN_AMERICA.WE8MSWIN1252で、特定のシステムで使用するカルチャの種類を Oracle 実装に伝えます (環境変数は PC ごとにあることに注意してください)。詳細については ネット 確認できます。

于 2012-03-19T14:58:20.853 に答える