2008年12月9日 星期二

GSpace 0.5.97 ~ 0.5.991 顯示中文介面

Q :
為何 多國語言版 一直顯示 英文介面 ?

A:
請在 [Firefox] 資料夾 下,搜尋 [gspace] 關鍵字,應該可以找到 套件所在處。

EX: c:\Documents and Settings\[使用者名稱]\Application Data\Mozilla\Firefox\Profiles\5vru042j.default\extensions\{B9C8BE50-7105-4ec6-8FB4-4935C0671648}\

因為這兩個檔案chrome.manifest, chrome_jar.manifest只 宣告 en-US or es-ES 語系

[ chrome.manifest ]
# locales
locale gspace en-US chrome/locale/gspace/en-US/


[ chrome_jar.manifest ]
# locales
locale gspace es-ES jar:chrome/gspace.jar!/locale/gspace/es-ES/
locale gspace en-US jar:chrome/gspace.jar!/locale/gspace/en-US/

請問怎麼辦呢 ?
請在 [ chrome.manifest ] 檔案 加一行 :

locale gspace zh-TW chrome/locale/gspace/zh-TW/

請在 [ chrome_jar.manifest ] 檔案 加一行 :

locale gspace zh-TW jar:chrome/gspace.jar!/locale/gspace/zh-TW/

問題自然迎刃而解。

2008年11月26日 星期三

如何用Java讀取使用證書

李素科

證書(Certificate,也稱public-key certificate)是用某種簽名算法對某些內容(比如公鑰)進行數字簽名後得到的、可以用來當成信任關係中介的數字憑證。證書發行機構通過發行證書告知證書使用者或實體其公鑰(public-key)以及其它一些輔助信息。證書在電子商務安全交易中有著廣泛的應用,證書發行機構也稱CA(Certificate Authority)。

應用證書


證書在公鑰加密應用中的作用是保證公鑰在某些可信的機構發佈,其在協議SSL、電子交易協議SET等方面有重要的應用。圖1顯示了一個最簡單的證書應用方法:




圖1 證書應用方法


證書的應用步驟是:

(1) A把自己的公鑰PKA送到CA(Certificate Authority);

(2) CA用自己的私鑰和A的公鑰生成A的證書,證書內包括CA的數字簽名。簽名對像包括需要在證書中說明的內容,比如A的公鑰、時間戳、序列號等,為了簡化這裡不妨假設證書中只有三項內容:A的公鑰PKA、時間戳TIME1、序列號IDA。那麼CA發送給A的簡單證書憑證可表達為:CertA=Eca[TIME1,IDA,PKA];

(3) B同樣把自己的公鑰PKB送到CA;

(4) B得到CA發佈的證書CertB;

(5) A告知B證書CertA;

(6) B告知A證書CertB。

A、B各自得到對方證書後,利用從CA得到的公鑰(在CA的自簽證書中)驗證彼此對方的證書是否有效,如果有效,那麼就得到了彼此的公鑰。利用對方的公鑰,可以加密數據,也可以用來驗證對方的數字簽名。

本文為了方便說明,並沒有使用從CA獲得的證書,而是通信雙方各自產生自簽證書,也就是說圖1的A和B並沒有經過CA,不過前提是A和B之間是互相擁有對方的證書。

證書的內容和意義如表1所示(這裡以通用X .509證書格式為例)。

表1 證書內容和意義


證書內容 意義
Version 告訴這個X.509證書是哪個版本的,目前有v1、V2、v3
Serial Number 由證書分發機構設置證書的序列號
Signature Algorithm Identifier 證書採用什麼樣的簽名算法
Issuer Name 證書發行者名,也就是給這個證書籤名的機構名
Validity Period 證書有效時間範圍
Subject Name 被證書發行機構簽名後的公鑰擁有者或實體的名字,採用X.500協議,在Internet上的標誌是惟一的。例如:CN=Java,OU=Infosec,O=Infosec Lab,C=CN表示一個subject name。


對證書的詳細定義及其應用相關的各種協議,這裡不加詳細說明,詳細細節請查看RFC2450、RFC2510、RFC2511、RFC2527、RFC2528、RFC2559、RFC2560、RFC2585、RFC2587等文檔。

生成自簽證書



個人或機構可以從信任的證書分發機構申請得到證書,比如說,可以從http://ca.pku.edu.cn 得到一個屬於個人的證書。這裡可以利用J2SDK的安全工具keytool手工產生自簽證書,所謂自簽證書是指證書中的「Subject Name」和「Issuer Name」相同的證書。

下面產生一個自簽證書。安裝完J2SDK(這裡用的是J2SDK1.4)後,在J2SDK安裝目錄的bin目錄下,有一個keytool的可執行程序。利用keytool產生自簽證書的步驟如下:

第一步,用-genkey命令選項,產生公私密鑰對。在控制台界面輸入:keytool -genkey -alias testkeypair -keyalg RSA -keysize 1024 -sigalg MD5withRSA。這裡的-alias表示使用這對公私密鑰產生新的keystore入口的別名(keystore是用來存放管理密鑰對和證書鏈的,缺省位置是在使用者主目錄下,以.keystore為名的隱藏文件,當然也可指定某個路徑存放.keystore文件);-keyalg是產生公私鑰對所用的算法,這裡是RSA;-keysize定義密鑰的長度;-sigalg是簽名算法,選擇MD5withRSA,即用RSA簽名,然後用MD5哈希算法摘要。接下來,系統會提示進行一些輸入:

輸入keystore密碼:  abc123
您的名字與姓氏是什麼?
[Unknown]: Li
您的組織單位名稱是什麼?
[Unknown]: InfosecLab
您的組織名稱是什麼?
[Unknown]: InfosecLab Group
您所在的城市或區域名稱是什麼?
[Unknown]: Beijing
您所在的州或省份名稱是什麼?
[Unknown]: Beijing
該單位的兩字母國家代碼是什麼
[Unknown]: CN
CN=Li, OU=InfosecLab, O=InfosecLab Group, L=Beijing, ST=Beijing, C=CN 正確嗎?
[否]: y
輸入的主密碼 (如果和 keystore 密碼相同,按回車):


第二步,產生自簽證書,輸入以下命令:

keytool -selfcert -alias testkeypair -dname "CN=Li, OU=InfosecLab, O=InfosecLab
Group, L=Beijing, ST=Beijing, C=CN"
輸入keystore密碼: abc123


第三步,導出自簽證書,由上面兩步產生的證書,已經存放在以「testkeypair」為別名的keystore入口了,如果使用其文件,必須導出證書。輸入:

keytool -export -rfc -alias testkeypair -file mycert.crt
輸入keystore密碼: abc123
保存在文件中的認證


這樣,就得到了一個自簽的證書mycert.crt。注意,選項rfc是把證書輸出為RFC1421定義的、用Base64最終編碼的格式。

讀取證書



Java為安全應用提供了豐富的API,J2SDK1.4 的JSSE (JavaTM Secure Socket Extension) 包括javax.security.certificate包,並且提供對證書的操作方法。而對證書的讀操作,只用java.security.cert. CertificateFactory和java.security.cert.X509Certificate就可以了。下面是讀取證書內容的部分代碼:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
import java.security.cert.CertificateFactory;
import java.security.cert.X509Certificate;
import java.io.*;
public class CARead extends JPanel {
private String CA_Name;
private String CA_ItemData[][] = new String[9][2];
private String[] columnNames = {"證書字段標記","內容" };
public CARead(String CertName) {
CA_Name=CertName;
/* 三個Panel用來顯示證書內容*/
JTabbedPane tabbedPane = new JTabbedPane();
JPanel panelNormal = new JPanel();
tabbedPane.addTab("普通信息", panelNormal);
JPanel panelAll=new JPanel();
panelAll.setLayout(new BorderLayout());
tabbedPane.addTab("所有信息",panelAll);
JPanel panelBase64=new JPanel();
panelBase64.setLayout(new BorderLayout());
tabbedPane.addTab("Base64編碼信息",panelBase64);
/* 讀取證書常規信息 */
Read_Normal(panelNormal);
/* 讀取證書文件字符串表示內容 */
Read_Bin(panelAll);
/* 讀取證原始Base64編碼形式的證書文件 */
Read_Raw(panelBase64);
tabbedPane.setSelectedIndex(0);
setLayout(new GridLayout(1, 1));
add(tabbedPane);
}
/*以下是定義的Read_Normal(),Read_Bin(),Read_Raw()以及main()
這裡省略... */
}



定義證書信息的讀取函數如下:

private int Read_Normal(JPanel panel){
String Field;
try{
CertificateFactory certificate_factory=CertificateFactory.getInstance("X.509");
FileInputStream file_inputstream=new FileInputStream(CA_Name);
X509Certificate
x509certificate=(X509Certificate)certificate_factory.generateCertificate
(file_inputstream);
Field=x509certificate.getType();
CA_ItemData[0][0]="類型";
CA_ItemData[0][1]=Field;
Field=Integer.toString(x509certificate.getVersion());
CA_ItemData[1][0]="版本";
CA_ItemData[1][1]=Field;
Field=x509certificate.getSubjectDN().getName();
CA_ItemData[2][0]="標題";
CA_ItemData[2][1]=Field;
/* 以下類似,這裡省略
Field=x509certificate.getNotBefore().toString();得到開始有效日期
Field=x509certificate. getNotAfter().toString();得到截止日期
Field=x509certificate.getSerialNumber().toString(16);得到序列號
Field=x509certificate.getIssuerDN().getName();得到發行者名
Field=x509certificate.getSigAlgName();得到簽名算法
Field=x509certificate.getPublicKey().getAlgorithm();得到公鑰算法 */
file_inputstream.close();
final JTable table = new JTable(CA_ItemData, columnNames);
TableColumn tc=null;
tc = table.getColumnModel().getColumn(1);
tc.setPreferredWidth(600);
panel.add(table);
}catch(Exception exception){
exception.printStackTrace();
return -1;
}
return 0;
}



如果以字符串形式讀取證書,加入下面Read_Bin這個函數。其中CertificateFactory.generateCertificate() 這個函數可以從證書標準編碼(RFC1421定義)中解出可讀信息。Read_Bin函數代碼如下:

private int Read_Bin(JPanel panel){
try{
FileInputStream file_inputstream=new FileInputStream(CA_Name);
DataInputStream data_inputstream=new DataInputStream(file_inputstream);
CertificateFactory certificatefactory=CertificateFactory.getInstance("X.509");
byte[] bytes=new byte[data_inputstream.available()];
data_inputstream.readFully(bytes);
ByteArrayInputStream bais=new ByteArrayInputStream(bytes);
JEditorPane Cert_EditorPane;
Cert_EditorPane=new JEditorPane();
while(bais.available()>0){
X509Certificate
Cert=(X509Certificate)certificatefactory.generateCertificate(bais);
Cert_EditorPane.setText(Cert_EditorPane.getText()+Cert.toString());
}
Cert_EditorPane.disable();
JScrollPane edit_scroll=new JScrollPane(Cert_EditorPane);
panel.add(edit_scroll);
file_inputstream.close();
data_inputstream.close();
}catch( Exception exception){
exception.printStackTrace();
return -1;
}
return 0;
}



如果要得到原始證書編碼後的信息,則可用如下代碼:

private int Read_Raw(JPanel panel){
try{
JEditorPane Cert_EditorPane=new JEditorPane();
String CertText=null;
File inputFile = new File(CA_Name);
FileReader in = new FileReader(inputFile);
char[] buf=new char[2000];
int len=in.read(buf,0,2000);
for(int i=1;i



最後用這個小程序看一看剛才生成的證書mycert.crt內容,把文件名寫入main()中:

public static void main(String[] args) {
JFrame frame = new JFrame("證書閱讀器");
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {System.exit(0);}
});
frame.getContentPane().add(new CARead("mycert.crt"),BorderLayout.CENTER);
frame.setSize(700, 425);
frame.setVisible(true);
}



證書mycert.crt的內容顯示如圖2所示,所有信息和Base64的顯示內容,這裡不再列舉。



圖2 證書mycert.crt的內容顯示

現在已經讀取了證書的一些內容,那麼怎樣使用證書呢?我們可以假設A和B要共享一個絕密的文件F,B信任並擁有A的證書,也就是說B擁有A的公鑰。那麼A通過A和B共知的加密算法(對稱密鑰算法,比如DES算法)先加密文件F,然後對加密後的F進行簽名和散列摘要(比如MD5算法,目的是保證文件的完整性),然後把F發送到B。B收到文件後,先用A的證書中的公鑰驗證簽名,然後再用通過共知的加密算法解密,就可以得到原文件了。這裡使用的數字簽名,可以保證B得到的文件,就是A的,A不能否認其不擁有文件F,因為只有A擁有可以讓A的公鑰驗證其簽名的私鑰,同時這裡使用DES算法加密,使得文件有保密性。

使用DES算法的加密解密函數類似,這裡不對加密算法做進一步討論,詳細請看J2SDK的JSE部分內容,加密簽名、解密驗證文件結構見圖3。


圖3 加密簽名、解密驗證文件結構圖



加密函數中的desKeyData存放DES加密密鑰,如果要在程序中指定,可以設置為:

static byte[] desKeyData = { (byte)0x01, (byte)0x02, (byte)0x03, (byte)0x04,
(byte)0x05, (byte)0x06, (byte)0x07, (byte)0x08 };


加密函數寫成:

public static void crypt(byte[] cipherText,String outFileName){  
try{
DESKeySpec desKeySpec = new DESKeySpec(desKeyData);
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
SecretKey secretKey = keyFactory.generateSecret(desKeySpec);
Cipher cdes = Cipher.getInstance("DES");
cdes.init(Cipher.ENCRYPT_MODE, secretKey);
byte[] ct = cdes.doFinal(cipherText);
try{
FileOutputStream out=new FileOutputStream(outFileName);
out.write(ct);
out.close();
}catch(IOException e){
e.printStackTrace();
}
}catch (Exception e){
e.printStackTrace();
}
}


其中ct就是加密後的內容,outFileName保存加密後文件的文件名。把cdes.init(Cipher.ENCRYPT_MODE, secretKey)換成cdes.init(Cipher.DECRYPT_MODE, secretKey)就是解密文件了。

文件加密後就要對文件簽名,保證A發送到B的文件不可偽造。下面是用存放在.keystore中的私鑰進行簽名的函數,簽名使用的摘要算法是MD5。其中sigText是被簽名內容的輸入數組,outFileName是保存簽名後輸出文件的名稱,KeyPassword是讀取Keystore使用的密碼,KeyStorePath是存放.keystore文件的路徑,函數代碼如下:

public static void sig(byte[] sigText, String outFileName,String
KeyPassword,String KeyStorePath){
char[] kpass;
int i;
try{
KeyStore ks = KeyStore.getInstance("JKS");
FileInputStream ksfis = new FileInputStream(KeyStorePath);
BufferedInputStream ksbufin = new BufferedInputStream(ksfis);
kpass=new char[KeyPassword.length()];
for(i=0;i


驗證簽名需要存放簽名文件和被簽名的文件以及證書,其中,updateData存放被簽名文件的內容,sigedText存放得到的簽名內容,CertName是證書名。驗證簽名代碼如下:

public static void veriSig(byte[] updateData, byte[] sigedText){
try{
CertificateFactory
certificatefactory=CertificateFactory.getInstance("X.509");
FileInputStream fin=new FileInputStream(CertName);
X509Certificate
certificate=(X509Certificate)certificatefactory.generateCertificate(fin);
PublicKey pub = certificate.getPublicKey();
Signature rsa=Signature.getInstance("MD5withRSA");
rsa.initVerify(pub);
rsa.update(updateData);
boolean verifies=rsa.verify(sigedText);
System.out.println("verified "+verifies);
if(verifies){
System.out.println("Verify is done!");
}else{
System.out.println("verify is not successful");
}
}catch(Exception e){
e.printStackTrace();
}
}


可以用keytool產生兩個自簽的簽名證書,或者到某個CA去申請兩個證書。用Java編寫加密和驗證程序,上述例子只是一個非常簡單的證書應用,實際協議對證書的使用(比如SSL)要比這個複雜多了。

引用來源:http://hy.gzntax.gov.cn/k//2003-1/694340.html

2008年11月24日 星期一

讓 Eclipse 加入 Subversion (SVN) 的版本控制功能

http://subclipse.tigris.org/
安裝步驟:
在 Eclipse IDE 中
點選 [說明 > 軟體更新> 尋找和安裝 > 搜尋要安裝的新特性 > 新的遠端網站]
輸入
名稱:SubEclipse
URL:http://subclipse.tigris.org/update
按下 [確定 > 完成]
出現搜尋結果後,勾選 SubEclipse 後按下 [下一步 > 點選接受授權後按下一步 > 完成]
開始進行下載,完成後出現驗證視窗點選 [全部安裝] 完成後重新啟動 Eclipse IDE 就完成安裝。
使用:
在 Eclipse IDE 中點選 [視窗 > 顯示視圖 > 其他]
出現顯示視圖對話框後,選擇 [SVN.SVN 檔案庫] 後按下確定。就會在 Eclipse IDE 中。

PS. 最好去查http://subclipse.tigris.org/看最新版SubEclupse的位置,目前為止1.4x位置為http://subclipse.tigris.org/update_1.4.xhttp://subclipse.tigris.org/update僅能更新至1.0

Java Applet與瀏覽器間的通信技術

摘  要:本文研究了Java Applet程序與互連網瀏覽器之間的通信技術,重點闡明了getParameter()、showStatus()以及showDocument()等方法的使用技巧。

關鍵字:Java Applet,瀏覽器,通信

在應用Java技術進行軟件開發時,通常都會遇到Java Applet程序與互連網瀏覽器之間的通信的問題。在java.applet包中的Applet類裡提供了許多方法,使之可以與瀏覽器進行通信,包括getCodeBase()、getDocumentBase()、getParameter()、getParameterInfo()、showStatus()、getAppletInfo()等方法。另外,還有java.applet包中的的AppletContext類裡的showDocument()方法。

本文重點討論getParameter()、showStatus()和showDocument()的用法和技巧。

一、getParameter()方法

Java Application通過命令行接受用戶參數,在Applet中,這個任務是通過HTML文件的另一個專門標記<PARAM>來完成的。從下面的例子中可以看出它的使用方法:

<HTML>

<BODY>

<APPLET code="AppletParam.class" height=60 width=300>

<PARAM name=varname value="Liu">

<PARAM name=varnum value=30>

</APPLET>

</BODY>

</HTML>

這個HTML文件中嵌入了一個名為AppletParam的Applet,同時在Applet運行時將向它傳遞兩個字符串參數:一個參數名為varname,取值為「Liu」;另一個參數名為varnum,取值為30。可見每個<PARAM>標記都只能傳遞一個字符類型的參數,這個參數的名字用來把它和其他參數區分開來,用name指定,這個參數的參數值用value指定。

Applet利用getParameter()方法來獲取HTML傳遞來的參數。這個方法的格式為:

String getParameter(String name);

該方法的功能是返回HTML中設定的值。字符串參數表示它所希望獲取的HTML參數的名字(即name指定的參數名)。方法的返回值是一個字符串對象,即HTML文件中value指定的字符串,如果希望這個參數是其他類型,還要進行參數類型的轉換。在處理Applet參數時,通常要給出缺省值,以防止用戶未給出該參數或給出非法參數值而使程序無法執行。

下面是ApplerParam.java的源代碼,注意觀察Applet如何從HTML文件中獲取參數。

import java.applet.Applet;

import java.awt.Graphics;

public class AppletParam extends Applet{    //定義主類

        private String name;    //用於接收HTML參數的程序變量

        private int num;

        public void init(){

             name=getParameter("varname");   //接收HMTL中傳遞的參數

             num=Integer.parseInt(getParameter("varnum"));

        }

        public void paint(Graphics g){

            g.drawString("Hello "+name+" ! Your are "+num+" years old.",10,20);

        }

}

二、showStatus()方法

Applet可以通過顯示簡短的狀態串,報告Applet的運行情況,狀態串顯示在瀏覽器或Appletviewer窗口的底部。在瀏覽器中,一個Web頁上的所有Applet與瀏覽器本身共享同一狀態顯示域。Applet顯示狀態串使用showStatus()方法,showStatus()方法就是用來在瀏覽器的狀態條顯示信息。這個方法的格式為:

void showStatus(String msg);

下面的例子說明了如何使用showStatus()方法,該程序的功能是單擊按鈕button,將文本框txt裡的文字顯示在瀏覽器的狀態條中。

import java.awt.*;

import java.awt.event.*;

import java.applet.*;

public class UIApplet extends Applet implements ActionListener{

TextField txt;

Button button;

public void init(){

            txt=new TextField(10);

            add(txt);       //填加文本域組件

       button=new Button("Show");

            button.addActionListener(this);

            add(button);    //填加按鈕組件

}

public void actionPerformed(ActionEvent e){//響應按鈕事件的事件處理方法

            showStatus(txt.getText());      //將文本域內容顯示在狀態行

        }

}

通常這一信息只是暫時性的,所以不應該用於顯示重要的信息或用於調試。由於狀態顯示域位置不突出,並且隨時可能被瀏覽器或其他Applet重寫,因而狀態串通常只應是一些不常用的輔助性的信息。對於一些至關重要的提示和警告信息,不要作為狀態串顯示在狀態行,應該顯示在Applet區域本身或是顯示在標準輸出上。

對於重要的信息或調試時要使用的信息,應該使用類System把它輸出到標準輸出,在標準輸出上報告診斷信息主要用於調試Applet。另外,當一個Applet生命週期出現了未捕獲的異常時也可以從標準輸出看到一些消息。標準輸出的確切顯示位置不確定,它依賴於瀏覽器的實現以及對瀏覽器或Appletveiwer的用法,如果在Unix的Shell窗口使用瀏覽器,則往標準輸出上顯示的字符串將輸出到shell窗口上,而在X窗口菜單使用瀏覽器,則標準輸出將打到console窗口。Netscape Navegator一般將Applet的標準輸出放到Java console窗口,該窗口由Options萊中彈出。

三、showDocument()方法

showDocument()方法是AppletContext類的方法。它可以用來請求瀏覽器顯示一個URL地址對應的HTML文件,並且可以控制顯示在哪個瀏覽器窗口。它的格式如下:

void showDocument(URL url);

或者

void showDocument(URL url,String target);

具有一個參數形式的showDocument()指示瀏覽器在指定的URL顯示有關文檔,它沒有指出顯示文檔的窗口,指定的HTML文件將在Applet所在的窗口中顯示。

具有兩個參數的showDocurnent()進一步指定顯示文檔的窗口,第二個參數target可以指明顯示Applet的窗口,可以取下列值:

「_self」在Applet的窗口中顯示文檔。

「_parent」在Applet窗口的父窗口中顯示文檔。若Applet是頂級窗口,效果同「_self」。

「_top」在Applet窗口的頂級窗口顯示本文檔。

「_blank」在一個新的無名窗口上顯示文檔。

「windowname」在名為windowname的窗口上顯示文檔,這一窗口可在需要時生成。

下面的程序在當前瀏覽器窗口中顯示了煙台大學的主頁。

import java.applet.*;

import java.net.URL;

import java.net.MalformedURLException;

public class sd extends Applet{

     public void init(){

    String us="http://www.ytu.edu.cn";  //www.ytu.edu.cn為煙台大學主頁地址

    URL u=null;

    AppletContext ac=getAppletContext();    //定義AppletContext類的對象ac

    try{

          u=new URL(us);

    }catch(MalformedURLException e){

           System.err.println("Malformed URL:"+us);

    }

    if(u!=null){

           ac.showDocument(u);      //在當前瀏覽器窗口顯示煙台大學主頁

    }

    }

}

如果將上面程序中的語句

ac.showDocument(u);

改為

ac.showDocument(u,"_blank");

那麼程序將保留原來的瀏覽器窗口,然後打開一個新的瀏覽器顯示煙台大學主頁。

參考文獻

1. 劉其成等. Java語言基礎教程. 石油大學出版社,2001

2. 劉其成等. 基於Java的DHTML技術及其應用. 微型機與應用. 2000, 12

3. 劉其成等. 面向對象的柔性設計與控制理論. 計算機工程與應用. Vol 38, No.18
4. 劉其成等. 基於Java數據報通信技術的聊天室設計與實現. 信息技術. 2002, 8

引用

http://www.comprg.com.cn/detail.asp?hw_id=1163

2008年11月6日 星期四

清除網路芳鄰記憶的帳號

miraculous

2006-01-21, 03:22 PM

請問
假設在輸入A帳號登入某台電腦的網路芳鄰分享資料夾後
如果需要改用另外的B帳號登入此資料夾
因為系統會在A帳號登入此資料夾過後一直記錄著,下次連線就會持續套用這個A帳號而不用再輸入帳號密碼
目前我要切換身分都要重新登出再登入,非常麻煩,還要關掉在使用的其他視窗
請問有什麼方法,或下什麼指令,可以讓WINDOWS忘記這個記錄,不用重新登出登入,就可以切換使用帳號登入 遠端網路芳鄰資料夾的嗎?


ESWL

2006-01-23, 03:09 PM

開始>執行>cmd> net use * /delete >enter>Y>enter