คำตอบที่ได้รับเลือกจากเจ้าของกระทู้
ความคิดเห็นที่ 8
ขออนุญาตอธิบายแบบนี้นะครับคือคำสั่ง TaskKill นั้นใช้ในการปิด Process(Task) ซึ่งการเปิดโฟลเดอร์นั้นมันจะเป็นการเปิดภายใต้ Process "Explorer" นั่นหมายถึงแต่ละโฟลเดอร์ที่เปิดขึ้นมานั้นจะไม่มีหมายเลข PID(Process ID)ของตัวเอง(มันอ้างอิงรวมจาก PID ของ Explorer) ถ้ามองตามภาพจะเข้าใจได้ง่ายขึ้นเพราะจะเห็นว่าแต่ละโฟลเดอร์จะไม่มีการใช้ทรัพยากรใดๆเลยทั้ง CPU , Memory (ใช้รวมกันใน Explorer เลย)

ดังนั้นคำสั่ง TaskKill ซึ่งใช้การอ้างอิงหมายเลข PID ในการปิด Process จึงไม่สามารถใช้ปิดโฟลเดอร์เหล่านั้นได้(ไม่มีหมายเลข PID มีแต่ชื่อ) ครับ ถ้ามีความจำเป็นต้องทำการปิดโฟลเดอร์ตามชื่อจริงๆผมแนะนำให้ลองใช้ Autoit ในการเขียนคำสั่งแทนครับเนื่องจากคำสั่งสั้นๆบรรทัดเดียวเหมือนกัน(เดาเอาว่า จขท น่าจะต้องการนำไปเขียนเป็น Batch File) เพียงแต่การนำไปใช้นั้นจะต้องทำการคอมไพล์เป็น .exe ก่อนในกรณีที่เครื่องดังกล่าวไม่ได้ลงโปรแกรม Autoit ไว้(ถ้าลงไว้ก็สามารถรันโดยไม่ต้องคอมไพล์เหมือน Batch File เลย)
คำสั่งในการปิดโฟลเดอร์คือ
ส่วนรายละเอียดวิธีการใช้ Autoit ลองศึกษาจากที่นี่นะครับ http://pssix.blogspot.com/2008/09/autoit-1.html เค้าอธิบายได้ละเอียดดีมากทีเดียว สามารถทำการศึกษาได้ไม่ยากครับ(ไวรัสหลายๆตัวในอดีตก็ใช้ Autoit ในการสร้างเนื่องจากตัวโปรแกรมเล็กและทำงานไวมาก หวังว่า จขท คงจะศึกษาและนำไปใช้ในทางที่เป็นประโยชน์นะครับ)

ดังนั้นคำสั่ง TaskKill ซึ่งใช้การอ้างอิงหมายเลข PID ในการปิด Process จึงไม่สามารถใช้ปิดโฟลเดอร์เหล่านั้นได้(ไม่มีหมายเลข PID มีแต่ชื่อ) ครับ ถ้ามีความจำเป็นต้องทำการปิดโฟลเดอร์ตามชื่อจริงๆผมแนะนำให้ลองใช้ Autoit ในการเขียนคำสั่งแทนครับเนื่องจากคำสั่งสั้นๆบรรทัดเดียวเหมือนกัน(เดาเอาว่า จขท น่าจะต้องการนำไปเขียนเป็น Batch File) เพียงแต่การนำไปใช้นั้นจะต้องทำการคอมไพล์เป็น .exe ก่อนในกรณีที่เครื่องดังกล่าวไม่ได้ลงโปรแกรม Autoit ไว้(ถ้าลงไว้ก็สามารถรันโดยไม่ต้องคอมไพล์เหมือน Batch File เลย)
คำสั่งในการปิดโฟลเดอร์คือ
WinClose("ชื่อโฟลเดอร์")
ครับ ส่วนรายละเอียดวิธีการใช้ Autoit ลองศึกษาจากที่นี่นะครับ http://pssix.blogspot.com/2008/09/autoit-1.html เค้าอธิบายได้ละเอียดดีมากทีเดียว สามารถทำการศึกษาได้ไม่ยากครับ(ไวรัสหลายๆตัวในอดีตก็ใช้ Autoit ในการสร้างเนื่องจากตัวโปรแกรมเล็กและทำงานไวมาก หวังว่า จขท คงจะศึกษาและนำไปใช้ในทางที่เป็นประโยชน์นะครับ)
แสดงความคิดเห็น
เรื่องคำสั่ง cmd ขออนุญาติถามซ้ำค่ะ เพราะยังทำไม่ได้เลยค่ะ รบกวนด้วยนะคะ
มีเข้ามาตอบ 2 ท่านนะคะ ท่านแรกแนะนำให้ใช้ WinLister ในการดู ProcessID เลยลองเขียนว่า TASKKILL /F /IM "หมายเลข pid" แต่ก็ไม่ได้ผล (สงสัยว่า จขกท จะเขียนไม่ถูก เพราะไม่รู้วิธีเขียนที่ถูกต้องน่ะค่ะ)
ส่วนท่านที่ 2 บอกให้เพิ่ม option title แต่ จขกท ไม่รู้ว่าจะเพิ่มยังไงอ่ะค่ะ ซึ่งพอ จขกท ถามกลับไปในความเห็นย่อยก็เข้าใจว่าท่านทั้ง 2 คงจะไม่ได้เปิดเข้ามาดูแล้ว เลยไม่ได้ตอบอีกครั้ง
ด้วยเหตุนี้ จขกท เลยขออนุญาติตั้งเป็นกระทู้ใหม่ เพื่อถามซ้ำอีกครั้งนะคะ เผื่อท่านทั้ง 2 ที่เคยช่วยเข้าไปตอบแล้วจะเห็นแล้วเข้ามาตอบเพิ่มเติม หรือท่านอื่นๆ ที่ยังไม่เคยเห็นคำถามนี้มาก่อน จะช่วยเข้ามาตอบก็จะขอบคุณมากๆๆๆๆๆ เลยค่ะ